Android 獲取系統(tǒng)各個目錄的方法
在Android開發(fā)過程中,我們經(jīng)常會對文件系統(tǒng)進行操作——存放、釋放我們應(yīng)用的數(shù)據(jù)。Android系統(tǒng)中提供了各種功能的文件目錄,每個目錄都有相應(yīng)的特點和功能。 這篇文章主要介紹和記錄一下實際開發(fā)過程中常用的各個文件目錄。
(1)內(nèi)部存儲(Internal Storage)
內(nèi)部存儲是App的私有目錄,當一個應(yīng)用卸載之后,內(nèi)部存儲中的這些文件也被刪除。Shared Preferences和SQLite數(shù)據(jù)庫文件都是存儲在內(nèi)部存儲空間上的。
-context.getFileDir()
路徑:(data/data/應(yīng)用包名/files),
不過經(jīng)實際測試(華為、小米手機等),getFileDir實際路徑為: /data/user/0/ 應(yīng)用包名/files
Log.e(TAG,getApplicationContext().getFilesDir().getAbsolutePath())
-context.getCacheDir()
應(yīng)用程序的緩存目錄,該目錄內(nèi)的文件在設(shè)備內(nèi)存不足時會優(yōu)先被刪除掉,所以存放在這里的文件是沒有任何保障的,可能會隨時丟掉。
路徑:(data/data/應(yīng)用包名/cache),不過經(jīng)實際測試(華為、小米手機等),getCacheDir的手機路徑為: /data//data/user/0/應(yīng)用包名/cache
Log.e(TAG,getApplicationContext().getCacheDir().getAbsolutePath())
(2 )外部存儲(External Storage)
外部存儲一般是指SDCard,外部存儲中的文件是可以被用戶或者其他應(yīng)用程序修改的,外部存儲中的目錄實際上也分為兩種:
-公共文件(目錄)
文件是可以被自由訪問,且文件的數(shù)據(jù)對其他應(yīng)用或者用戶來說都是由 意義的,當應(yīng)用被卸載之后,其卸載前創(chuàng)建的文件仍然保留。
Environment.getExternalStorageDirectory()
SD卡的根目錄,路徑:/storage/emulated/0
Log.e(TAG, Environment.getExternalStorageDirectory().getAbsolutePath());
-私有文件
由于是外部存儲的原因即使是這種類型的文件也能被其他程序訪問,只不過一個應(yīng)用私有的文件對其他應(yīng)用其實是沒有訪問價值的(惡意程序除外)。外部存儲上,應(yīng)用私有文件的價值在于卸載之后,這些文件也會被刪除。類似于內(nèi)部存儲。
getApplicationContext().getExternalFilesDir(“”)
路徑:/storage/emulated/0/Android/data/應(yīng)用包名/files
Log.e(TAG, getApplicationContext().getExternalFilesDir("").getAbsolutePath());
擴展: getExternalFilesDir是手機中設(shè)置 → 應(yīng)用 → 具體應(yīng)用詳情→ 清除數(shù)據(jù) 的操作對象
getApplicationContext().getExternalCacheDir()
路徑:/storage/emulated/0/Android/data/應(yīng)用包名/cache
Log.e(TAG,getApplicationContext().getExternalCacheDir().getAbsolutePath());
擴展:getExternalCacheDir是手機中設(shè)置 → 應(yīng)用 → 具體應(yīng)用詳情→ 清除緩存的操作對象
以上這篇Android 獲取系統(tǒng)各個目錄的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Android Studio檢測內(nèi)存泄露(LeakCanary)
本篇文章主要介紹了用Android Studio檢測內(nèi)存泄露的問題的解決方法,Android Studio在為我們提供了良好的編碼體驗的同時,也提供了許多對App性能分析的工具,下面我們一起來了解一下。2016-12-12使用TransitionDrawable實現(xiàn)多張圖片淡入淡出效果
這篇文章主要為大家詳細介紹了使用TransitionDrawable實現(xiàn)多張圖片淡入淡出效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08Android仿微信發(fā)表說說實現(xiàn)拍照、多圖上傳功能
這篇文章主要為大家詳細介紹了Android仿微信發(fā)表說說實現(xiàn)拍照、多圖上傳功能,使用Retrofit2.0技術(shù),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-03-03Android中recyclerView底部添加透明漸變效果
這篇文章主要給大家介紹了關(guān)于Android中recyclerView如何實現(xiàn)底部添加透明漸變效果的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2018-04-04