我的應用程序可以處理大約500張圖片 - aprox 5Mb。圖像將逐個顯示給用戶,其中包含一個問題。我想知道什麼是存儲和訪問圖像的最佳方式。在Android中有很多圖片的應用程序
我正在考慮以下兩個選項:
SD卡上保存的圖像。有沒有辦法阻止用戶看到/刪除圖像?
圖像數據保存到數據庫
我的應用程序可以處理大約500張圖片 - aprox 5Mb。圖像將逐個顯示給用戶,其中包含一個問題。我想知道什麼是存儲和訪問圖像的最佳方式。在Android中有很多圖片的應用程序
我正在考慮以下兩個選項:
SD卡上保存的圖像。有沒有辦法阻止用戶看到/刪除圖像?
圖像數據保存到數據庫
不知道這是最好的方式,但我做的事以下方式(如果圖片的總大小爲5MB):
如果您不想將它們存儲在SD卡上(例如,您將圖片與應用程序一起打包,而不是從互聯網下載並保存),因此我建議將圖片文件放入assets
文件夾。
我想每個問題都涉及一個或多個圖片,所以您應該使用數據庫(sqlite)來保存問題文本以及assets
文件夾中相對圖片的路徑。
要顯示圖片,例如在ImageView中,您應該從assets
文件夾中的圖片文件中加載位圖。您可以在this code中使用類似ImageUtil.loadBitmapFromAssetNoThrow
的方法。
我認爲將圖像數據保存到數據庫中會使其大而且訪問速度慢。
是的,我有一個包含2000多個問題的數據庫,其中一些也有圖片。我將採用這個解決方案,目前看來這是最好的解決方案。 謝謝! –
如果我理解正確,應用程序第一次啓動時會下載圖像? – Egor
將圖像保存到數據庫不是一個好主意。 – kingori
我還沒有決定在這方面。我寧願與應用程序同時安裝,但在第一次運行時下載它們也是可以的。我會用哪個解決方案看起來最好。 –