Android中的图片延迟加载

时间:2015-08-25 15:10:20

标签: android ssl lazy-loading basic-authentication ui-thread

我正在开发一个App,我有很多ListViews。在每个ListView项目上,都有一张图片。为了从服务器加载图片,请考虑:

  • 基本身份验证。
  • SSL认证。

我想知道最好的方法是什么。我试图制作一个使用Volley Library的ImageRequest的递归方法,但似乎它有点阻止UI线程...... 我已经尝试了Picasso,它允许加载异步图片,这要归功于ImageView和请求之间的关联,无法使其与基本身份验证一起使用并忽略SSL认证。 Here is my not solved problem

我正在寻找其他解决方案......所以如果有人有想法,我会非常感激......

提前致谢!

1 个答案:

答案 0 :(得分:0)

毕加索是一个神解决方案。要添加自定义标题,只需使用您自己的下载程序即可。

OkHttpClient picassoClient = client.clone();
picassoClient.interceptors().add(new MyInterceptor());
// ...
new Picasso.Builder(context).downloader(new OkHttpDownloader(picassoClient)).build();

在此问题中了解相关内容:https://github.com/square/picasso/issues/900

您还可以使用OkHttp用户Fresco(https://github.com/facebook/fresco):http://frescolib.org/docs/using-other-network-layers.html

Context context;
OkHttpClient okHttpClient; // build on your own
ImagePipelineConfig config = OkHttpImagePipelineConfigFactory
    .newBuilder(context, okHttpClient)
    . // other setters
    . // setNetworkFetcher is already called for you
    .build();
Fresco.initialize(context, config);