我在android 4.2.2上遇到Universal Image Loader 1.9.1的问题。 这里描述的相同:Android Universal image loader, stop retry。我已多次阅读NOSTRA答案,但我无法弄清楚如何实现。我应该扩展BaseImageDownloader并覆盖getStream方法吗?我想使用答案的最后部分:
UIL不会重试图像加载本身。如果你返回null,那么你将获得onLoadingFailed(...)回调。如果再次为同一URL调用displayImage(...),则UIL将尝试再次加载图像。 如果您想阻止它,那么您应该在某处保留“错误”网址,而不是为这些网址调用ImageLoader,或在ImageDownloader中为这些网址返回null 。
基本上,最简单的方法是避免UIL尝试一遍又一遍地联系有效的URL指向无效的图像文件?我不知道它是否有用,这是我的配置:
DisplayImageOptions options = new DisplayImageOptions.Builder()
.resetViewBeforeLoading(true).cacheInMemory(true)
.cacheOnDisc(true)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)
.showImageForEmptyUri(R.drawable.photo_placeholder)
.showImageOnFail(R.drawable.photo_placeholder).build();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
context).memoryCacheExtraOptions(200, 200)
.discCacheExtraOptions(200, 200, CompressFormat.JPEG, 75, null)
.threadPoolSize(5).denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024))
.imageDownloader(new BaseImageDownloader(context) {
})
.defaultDisplayImageOptions(options).build();
我真的需要一些帮助,我的应用程序大量使用UIL。
答案 0 :(得分:0)
正如UIL的作者所说,UIL不会重试图像加载本身。没有必要担心这个