我正在开发一个项目,我必须将联系人的个人资料图片延迟加载到recyclerview中,如果用户处于离线状态,我会将缓存的图像加载到recyclerview中。我使用Universal Image loader从服务器加载图像并将其缓存在device.Universal Image loader缓存文件路径中的图像
[Android->data->packagename->cache]
这里的问题是用户能够通过转到该路径[Android-> data-> packagename-> cache]来查看缓存的图像(图像的缩略图)。
1)有没有办法可以缓存不同扩展名的图像,这样用户就无法看到那些缓存的图像?
2)如何使用UIL缓存此路径以外的图像[Android-> data-> packagename-> cache]?
以下是我尝试使用不同扩展名和不同位置缓存图片的方法,它创建了文件夹“cool”,但图片已缓存在默认位置([Android-> data-> packagename-> cache] )
我尝试在[Android-> data-> packagename-> files]中缓存图片
DisplayImageOptions defaultOptions = new DisplayImageOptions.Builder()
.showImageForEmptyUri(R.drawable.profileimage)
.cacheInMemory(true)
.cacheOnDisk(true)
.build();
File cacheDir = this.getExternalFilesDir("cool");
File cache = new File(cacheDir,"cool.m");
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this)
.defaultDisplayImageOptions(defaultOptions)
.diskCache(new UnlimitedDiskCache(cache))
.build();
ImageLoader.getInstance().init(config);