【问题标题】:Image from certain Url is not load in picasso毕加索中未加载来自某些网址的图像
【发布时间】:2018-05-25 21:18:30
【问题描述】:

我第一次使用picasso 从 URL 加载图像,然后从缓存中使用。来自网络的任何 URL 都在线或离线加载到imageview。但是我的服务器图像 URL 是在线加载图像而不是离线加载图像。我使用来自图像加载的以下代码。

 Picasso.with(mContext)
            .load(urlProfile)
            .networkPolicy(NetworkPolicy.OFFLINE)
            .placeholder(R.drawable.ic_place_holder)
            .into(imageView, new Callback() {
                @Override
                public void onSuccess() {

                }

                @Override
                public void onError() {
                    Picasso.with(mContext)
                            .load(urlProfile)
                            .placeholder(R.drawable.ic_place_holder)
                            .into(imageView);
                }
            }); 

在线或离线加载网页网址:URL

我的服务器 url 仅在线加载图片:URL

我在缓存目录中显示,发现我的服务器 URL 的图像没有被缓存。任何人都对此有所了解。

【问题讨论】:

标签: android caching picasso


【解决方案1】:

您好,下面是我的解决方案,效果很好。

Picasso.with(mContext)
                .load(Uri.parse(urlProfile))
                .networkPolicy(NetworkPolicy.OFFLINE)
                .into(iv_view, new Callback() {
                    @Override
                    public void onSuccess() {
                        // if you are showing progress then handle it on here
                    }

                    @Override
                    public void onError() {
                        // Try again online if cache failed and download using internet                          
                        new Picasso.Builder(mContext)
                                .downloader(new OkHttpDownloader(mContext, Integer.MAX_VALUE))
                                .build()
                                .load(Uri.parse(urlProfile))
                                .placeholder(R.mipmap.ic_launcher)
                                .into(iv_view);
                    }
                });

希望对你有所帮助..

顺便说一句,这已经很老了,但你可以使用 Glide 来获得更好的性能。

【讨论】:

  • 考虑评论您所做的更改
  • 我有如下更改:new Picasso.Builder(mContext) .downloader(new OkHttpDownloader(mContext, Integer.MAX_VALUE)) .build()
  • 我觉得对你有帮助
猜你喜欢
  • 2015-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多