![](/img/trans.png)
[英]Is there a way to know in code from where the application downloaded on Android
[英]Is there a way to know where an image was loaded from on UniversalLoader?
我在我的项目中使用 Universal Image Loader。 如果图像是从服务器加载的,我想做一个特定的操作,如果从内存或磁盘缓存加载什么都不做。
到目前为止,我发现这样做的唯一方法是提前 ping 内存和磁盘缓存,看看它们是否包含图像。 这不是很好,因为如果它不存在,显示图像的正常流程将重复此检查,因此我正在重复工作。
有一个更好的方法吗? 我在代码中看到一个LoadedFrom
变量,它在不同的内部方法之间传递,但没有在公共 API 上返回。
您可以使用此代码来检查图像是否已缓存:
public static boolean checkCacheImageUri(String uri) {
List<String> findCacheKeysForImageUriThumbnail = MemoryCacheUtils.findCacheKeysForImageUri(
uri, ImageLoader.getInstance().getMemoryCache());
if (findCacheKeysForImageUriThumbnail != null
&& !findCacheKeysForImageUriThumbnail.isEmpty()) {
return true;
}
return false;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.