2011-11-14 175 views
2

我需要一點幫助,瞭解我可以做什麼,不能在android中。我正在研究的應用程序需要首先要求用戶選擇一個設備(內部/外部存儲),以保存我的應用程序通過互聯網下載的數據。所以我試圖找到關於這個問題的幾個問題的答案:Android在內部/外部存儲器中保存應用程序設置/數據

  1. 對於單個應用程序,Android內部/外部存儲的數據是否有任何限制。
  2. 我可以設置我的應用程序使用的sqlite數據庫的目錄,如果可以,是否是一種好的做法。
  3. 當用戶決定將應用程序數據的目標從內部存儲更改爲外部存儲時,應該考慮什麼。我應該再次創建所有文件夾等,還是Android平臺自動執行此操作?

在此先感謝!

回答

1
  1. 您對外部存儲器的限制(SDCARD)僅由其容量決定,我不確定內部存儲器是否相同。
  2. 您可以擴展SQLiteOpenHelper並創建您自己的數據庫適配器,它將管理您的數據庫並將其存儲在SD卡或/ data/databases目錄中。我認爲最好不要將數據庫放在SDCARD上,因爲任何其他應用程序都可以在那裏訪問它。另一方面,/ data /文件夾是私有的。
  3. 這是棘手的事情。複製數據時應小心。在寫入文件之前檢查文件的目錄是否存在。在嘗試寫入所有文件和目錄之前,最好明確地創建所有文件和目錄。

Here是Database Helper訪問數據庫的一個很好的例子。您可以修改它,以便它可以使用外部和內部存儲。

相關問題