2013-03-27 28 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

相關問題