要存储在缓存中的图像数组?

时间:2018-06-06 16:07:23

标签: android kotlin android-sharedpreferences

我正在使用cardscardView)并尝试将图像存储在数组中(数组到字符串;将其存储在缓存中,并在需要时解压缩回数组)。我的问题是:将图像存储在数组中最方便的方法是什么?

存储位图(bitmapToString等)?将位图(我从图库和相机中获取图像)转换为URI?绝对路径?

图像数量很少(3-4),所以,我想,数据库中没有必要。

1 个答案:

答案 0 :(得分:2)

Android Bitmap对象不适合存储在Java数组中 - 它们是非常大的对象,因此您冒着OutOfMemoryException的风险。如果不小心,很容易造成内存泄漏。

如果您必须从库中获取一些照片Bitmap并将其保留在您的应用中,则通常使用的其中一种模式是将Bitmap写入应用的内部存储空间(涵盖{ {3}}

如果您需要对存储的照片进行引用,则可以保存文件名或代表照片或图像的Uri

然后,使用herePicasso等库来解决将Bitmap等加载到ImageView的问题。您可以使用这些文件从本地文件系统或在线加载。