使用通用图像加载器,是否可以直接将图像保存到磁盘并在不同的应用程序运行之间重用这些图像?
我知道imageLoader.displayImage(imageURI, itemHolder.image, options);
第二次从缓存中获取图像,但是如果退出应用程序,缓存就会被删除。
我希望显示图像方法将图像保存到永久位置,并在每次应用调用该方法时使用该位置。
这是否可以使用Universal Image Loader或我是否需要寻找其他方法?
答案 0 :(得分:1)
尝试使用
.discCache(new FileCountLimitedDiscCache(cacheDir, new Md5FileNameGenerator(), 1000))
ImageLoaderConfiguration中的选项
它对我有用。
答案 1 :(得分:0)
您可以将图像保存到隐藏文件夹,然后随时重复使用。
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/.saved_images");
myDir.mkdirs();
Random generator = new Random();
int n = 10000;
n = generator.nextInt(n);
String fname = "Image-"+ n +".jpg";
File file = new File (myDir, fname);
if (file.exists ()) file.delete ();
try {
FileOutputStream out = new FileOutputStream(file);
finalBitmap.compress(Bitmap.CompressFormat.JPEG, 90, out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
这在你的清单中
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
请注意我在文件夹名称之前插入的 .
,这会隐藏文件夹。