我想保存從服務器下載的圖像。我希望這些圖像只能從應用程序內部訪問。我不希望圖像可以從任何其他地方訪問,也就是說,有人可以像刪除SD卡上的圖像或從其他不同的應用程序那樣刪除/修改圖像。我認爲如果我使用內部存儲器是最好的,因爲它對我的應用程序是私有的。對我來說這是最好的存儲選項嗎?
http://developer.android.com/guide/topics/data/data-storage.html#filesInternal
有更好的選擇了嗎?
我想保存從服務器下載的圖像。我希望這些圖像只能從應用程序內部訪問。我不希望圖像可以從任何其他地方訪問,也就是說,有人可以像刪除SD卡上的圖像或從其他不同的應用程序那樣刪除/修改圖像。我認爲如果我使用內部存儲器是最好的,因爲它對我的應用程序是私有的。對我來說這是最好的存儲選項嗎?
http://developer.android.com/guide/topics/data/data-storage.html#filesInternal
有更好的選擇了嗎?
如果您想讓文件保密,內部存儲是最佳選擇。
但是,在大多數設備上,內部存儲非常有限,用戶可能會卸載您的應用程序,如果您使用太多(圖像可能很大)。
您應該考慮使用外部存儲器來保存圖像,並且如果您真的想保留圖像,可能需要加密它們。
正如Raghav已經提到的那樣,這將是一個不錯的選擇,並且如上所述內部存儲非常有限(大多數在較舊的設備上),但是如果您位於根設備上,則無論如何都可以刪除文件。考慮到有限的存儲空間,因爲人們還在SD卡上製作「交換分區」,因爲內部存儲非常有限。
這是最簡單的解決方案。另一種典型的解決方案是將圖像作爲blob存儲在應用程序的數據庫中。這將使其在應用程序之外完全無法訪問。您可以使用此處顯示的方法做到這一點:
How to store and retrieve a byte array (image data) to and from a SQLite database?
的劃回,這是你會爲你的DB(< 60MB)被給予相對較小的內存空間,因此這僅適用,如果你有一個少量的圖像。
謝謝我會考慮這一點。 – Jake 2013-03-27 21:07:56
如果用戶卸載應用程序,它是否也會刪除外部存儲上的這些映像? – Jake 2013-03-27 21:06:11
@Jake不,它不會。 – 2013-03-27 21:06:49