2013-03-27 100 views
0

我想保存从服务器下载的图像。我希望这些图像只能从应用程序内部访问。我不希望图像可以从任何其他地方访问,也就是说,有人可以像删除SD卡上的图像或从其他不同的应用程序那样删除/修改图像。我认为如果我使用内部存储器是最好的,因为它对我的应用程序是私有的。对我来说这是最好的存储选项吗?

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

有更好的选择了吗?

回答

0

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

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

您应该考虑使用外部存储器来保存图像,并且如果您真的想保留图像,可能需要加密它们。

+0

如果用户卸载应用程序,它是否也会删除外部存储上的这些映像? – Jake 2013-03-27 21:06:11

+0

@Jake不,它不会。 – 2013-03-27 21:06:49

0

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

0

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

How to store and retrieve a byte array (image data) to and from a SQLite database?

的划回,这是你会为你的DB(< 60MB)被给予相对较小的内存空间,因此这仅适用,如果你有一个少量的图像。

+0

谢谢我会考虑这一点。 – Jake 2013-03-27 21:07:56

相关问题