android 各個儲存路徑及獲取方法總結
最長用到的就這三個位置
- /data/data/包名/
- /sdcard/Android/data/包名/
- /sdcard/xxx
前兩個是應用內部儲存, 會隨著app的解除安裝而自動刪除, sdcard中其他的資料夾不會自動刪除, 除非使用者手動刪除, 否則會一直存在, 換句話說就是垃圾.
Google官方建議把資料儲存在 /sdcard/Android/data/包名/ 下.
路徑獲取方法
前兩個應用內部儲存通過 Context 來獲取, 第三個作為外部儲存是通過 Environment 類來獲取. 註釋為返回值.
/data/data/包名/
context.getFilesDir(); // /data/data/包名/files
context.getCacheDir(); // /data/data/包名/cache
/sdcard/Android/data/包名/
context.getExternalFilesDir(); // /sdcard/Android/data/包名/files
context.getExternalCacheDir(); // /sdcard/Android/data/包名/cache
/sdcard/xxx
// /storage/emulated/0
Environment.getExternalStorageDirectory();
// /storage/emulated/0/DCIM, 另外還有MOVIE/MUSIC等很多種標準路徑
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
注意, 根據原始碼文件中說明, 獲取外部儲存時, 有可能會因為各種問題導致獲取失敗, 建議先使用 getExternalStorageState 來判斷外部儲存狀態, 如果已掛載的話再儲存.
作者:嘰哩嘰哩雞
來源:CSDN
原文: https://blog.csdn.net/j550341130/article/details/80422250
版權宣告:本文為博主原創文章,轉載請附上博文連結!
歡迎掃碼加入QQ群一起學習討論。【QQ群:930039263】
