0

我想保存从服务器下载的图像。我希望这些图像只能从应用程序本身访问。我不希望从其他任何地方访问图像,即有人可以删除/修改它,就像它在 SD 卡上或从另一个不同的应用程序一样。我认为最好使用内部存储,因为它对我的应用程序是私有的。

http://developer.android.com/guide/topics/data/data-storage.html#filesInternal

有更好的选择吗?

4

3 回答 3

0

如果您想将文件保密,内部存储是最佳选择。

但是,在大多数设备上,内部存储空间非常有限,如果您使用过多,用户可能会卸载您的应用程序(图像可能非常大)。

您应该考虑使用外部存储来保存图像,如果您真的想将它们保密,可能会对其进行加密。

于 2013-03-27T21:02:57.510 回答
0

正如 Raghav 已经提到的那样,这将是一个不错的选择,并且如前所述,内部存储非常有限(主要在旧设备上),但是如果您使用的是 root 设备,则无论如何都可以删除您的文件。考虑到有限的存储空间,因为人们也在他们的 SD 卡上制作“交换分区”,因为内部存储空间非常有限。

于 2013-03-27T21:06:13.700 回答
0

这是最简单的解决方案。另一个典型的解决方案是将图像作为 blob 存储在应用程序的数据库中。这将使它在您的应用程序之外完全无法访问。您可以使用此处显示的方法执行此操作:

如何在 SQLite 数据库中存储和检索字节数组(图像数据)?

这样做的缺点是您将为您的数据库(<60MB)提供相对较小的内存空间,因此这仅适用于您拥有少量图像的情况。

于 2013-03-27T21:06:16.943 回答