2012-08-12 50 views
0

getExternalFilesDir()用於獲取應用程序文件夾Android/data/data/your_package/ 的路徑,允許保存時,應用程序將我刪除將被刪除DATAS!安卓:記錄大DATAS到app文件夾

我想安裝一個大數據(可能是256 Mo)。 如何將這些數據安裝到SD卡上(而不是放在應用程序文件夾中),但請確保在我移除應用程序時將這些數據移除!

我可以使用getExternalStorageDirectory(),但刪除應用程序時不會刪除數據!

例如,谷歌地圖應用程序加載了很多數據(地圖)。如果可以刪除地圖應用程序,我想應該也刪除緩存的地圖!

回答

1

正如documentation說:如果你使用的API 8級或更大的外部存儲

訪問文件,請使用getExternalFilesDir()來 打開表示外部存儲文件 應該保存你的文件的目錄。此方法採用類型參數 指定所需的子目錄的類型,例如DIRECTORY_MUSIC 和DIRECTORY_RINGTONES(傳遞null以接收您的 應用程序的文件目錄的根目錄)。如果需要,此方法將創建適當的 目錄。通過指定目錄類型,您可以確保Android的媒體掃描程序能夠正確地將您的 文件歸類到系統中(例如,鈴聲被識別爲 鈴聲而不是音樂)。如果用戶卸載您的應用程序,該目錄及其所有內容將被刪除。

如果您使用API​​ Level 7或更低版​​本,請使用 getExternalStorageDirectory()打開表示外部存儲的根目錄 的File。然後,您應該將您的數據寫入以下 目錄中:

/Android/data //文件/這是您的 Java樣式的包名稱,例如「com.example.android.app」。如果 用戶的設備正在運行API級別8或更高版本並且他們卸載了 您的應用程序,則該目錄及其所有內容將被刪除。