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