【问题标题】:Android - Picasso misses pictures sometimesAndroid - 毕加索有时会错过图片
【发布时间】:2016-05-27 19:27:52
【问题描述】:

我正在使用 Picasso 库使用以下代码下载图像,我必须通过调整它们的大小并转换为圆形来循环加载许多图片。有时会成功加载图像,有时会调用 onError 方法而不是 Callback 中的 onSuccess。我收到此错误SkImageDecoder::Factory returned null Error。当我卸载该应用程序然后重新安装图像后大部分成功加载。究竟是什么问题,请提出任何解决方案。

代码:

int dp = (int) resources.getDimension(R.dimen.marker_pic_size);
    Picasso.with(context).load(profilePic_url)
            .transform(new CircleTransform())
            .resize(dp, dp)
            .into(tempView, new Callback() {
                @Override
                public void onSuccess() {
                Log.d("usm_onSuccess", profilePic_url);   
                  }

                @Override
                public void onError() {
                    Log.d("usm_onError", profilePic_url);
                }
            });

【问题讨论】:

  • 我也面临这个问题?任何答案都会是救生员!

标签: android picasso bitmapfactory imagedownload


【解决方案1】:

使用Target可能会解决你的问题。

target = new Target() {
@Override
public void onPrepareLoad(Drawable drawable) {}

@Override
public void onBitmapLoaded(Bitmap bitmap, LoadedFrom arg1) {
    if(bitmap != null) {
        tempView.setImageBitmap(bitmap);
    }
}

@Override
public void onBitmapFailed(Drawable drawable) {}
};

...

int dp = (int) resources.getDimension(R.dimen.marker_pic_size);
    Picasso.with(context).load(profilePic_url)
            .transform(new CircleTransform())
            .resize(dp, dp)
            .into(target);
tempView.setTag(target);

知道issue。您也可以查看this 了解更多信息。

【讨论】:

  • 感谢您的回复。对于某些图片,我仍然收到“SkImageDecoder::Factory 返回 null 错误”
猜你喜欢
  • 2015-08-24
  • 1970-01-01
  • 2015-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-10
  • 2018-07-29
  • 1970-01-01
相关资源
最近更新 更多