在系統(tǒng)中system/app文件夾中。
創(chuàng)新互聯(lián)公司專注于渝北網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供渝北營(yíng)銷型網(wǎng)站建設(shè),渝北網(wǎng)站制作、渝北網(wǎng)頁設(shè)計(jì)、渝北網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造渝北網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供渝北網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
在android系統(tǒng)中安裝軟件時(shí),系統(tǒng)會(huì)將其安裝在設(shè)定好的路徑當(dāng)中,即system/app路徑。后來下載的APP可以卸載,但系統(tǒng)自帶的APP不能卸載,否則會(huì)引發(fā)系統(tǒng)的崩潰。
在安裝APP時(shí),也可以直接將文件復(fù)制到手機(jī)里(手機(jī)內(nèi)存、Storage Card都可以),在手機(jī)上執(zhí)行該CAB文件即可安裝。
擴(kuò)展資料
android系統(tǒng)中的app不同格式安裝:
1、CAB格式,直接將文件copy到手機(jī)里,都可以在手機(jī)上執(zhí)行該CAB文件即可安裝。
2、EXE格式,EXE格式的程序可分為手機(jī)上直接運(yùn)行(即綠色軟件的形式)和連接電腦同步安裝2種形式。
3、免安裝軟件(綠色軟件),將文件直接拷貝到手機(jī)里(手機(jī)內(nèi)存、Storage Card都可以)即可運(yùn)行。這種軟件在網(wǎng)上下載時(shí)一般是RAR或ZIP格式壓縮包,只需先在電腦上解壓,將解壓出來的文件夾拷貝到手機(jī)里即可運(yùn)行。
4、Cpl文件,將文件直接拷貝到手機(jī)windows目錄下,即可在設(shè)置中出現(xiàn)相應(yīng)的選項(xiàng)。如SoftKeyAppleEx.cpl對(duì)應(yīng)會(huì)出現(xiàn)軟件設(shè)置選項(xiàng)。
參考資料:百度百科-手機(jī)軟件
原來,只要把文件寫在這里的話,可以不用動(dòng)態(tài)申請(qǐng)權(quán)限,只要在manifest里面聲明權(quán)限就ok了;
應(yīng)用程序在運(yùn)行的過程中如果需要向手機(jī)上保存數(shù)據(jù),一般是把數(shù)據(jù)保存在SDcard中的。
大部分應(yīng)用是直接在SDCard的根目錄下創(chuàng)建一個(gè)文件夾,然后把數(shù)據(jù)保存在該文件夾中。
這樣當(dāng)該應(yīng)用被卸載后,這些數(shù)據(jù)還保留在SDCard中,留下了垃圾數(shù)據(jù)。
并且在API
6.0之后,根目錄文件存儲(chǔ)是需要用戶授權(quán)的,就算你在AndroidManifest.xml中配置了存儲(chǔ)權(quán)限,用戶不授權(quán)也是寫不進(jìn)去了。
SD卡讀寫權(quán)限:
如果你想讓你的應(yīng)用被卸載后,與該應(yīng)用相關(guān)的數(shù)據(jù)也清除掉,該怎么辦呢?
通過
可以得到
這個(gè)目錄里面,一般放一些長(zhǎng)時(shí)間保存的數(shù)據(jù)
方法可以獲取到 SDCard/ Android /data/你的應(yīng)用的包名/files/ 目錄,一般放一些長(zhǎng)時(shí)間保存的數(shù)據(jù)
通過
方法可以獲取到
如果使用上面的方法,當(dāng)你的應(yīng)用在被用戶卸載后,SDCard/Android/data/你的應(yīng)用的包名/ 這個(gè)目錄下的所有文件都會(huì)被刪除,不會(huì)留下垃圾信息。并且
這個(gè)方法獲得的文件存儲(chǔ)路徑適用于6.0以后系統(tǒng),只要AndroidManifest.xml配置讀寫權(quán)限了,就不需要用戶再授權(quán)了。
正常開發(fā)中獲取存儲(chǔ)路徑的方法是:
可以看到,當(dāng)SD卡存在或者SD卡不可被移除的時(shí)候,就調(diào)用getExternalCacheDir()方法來獲取緩存路徑,否則就調(diào)用getCacheDir()方法來獲取緩存路徑。前者獲取到的就是 /sdcard/Android/data/application package/cache 這個(gè)路徑,而后者獲取到的是 /data/data/application package/cache 這個(gè)路徑。
設(shè)置-應(yīng)用-應(yīng)用詳情里面的”清除數(shù)據(jù)“與”清除緩存“選項(xiàng)分別對(duì)應(yīng)的是data/data/application package/和data/data/application package/cache
external storage (外部存儲(chǔ)):
Environment.getExternalStorageDirectory()SD根目錄:/mnt/sdcard/ (6.0后寫入需要用戶授權(quán))
context.getExternalFilesDir(dir)路徑為:/mnt/sdcard/Android/data/ package name /files/…
context.getExternalCacheDir()路徑為:/mnt/sdcard//Android/data/ package name /cache/…
internal storage(內(nèi)部存儲(chǔ)):
context.getFilesDir()路徑是:/data/data/ package name /files/…
context.getCacheDir()路徑是:/data/data/ package name /cach/…
手機(jī)瀏覽器下載的文件位置如下:
我們首先找到手機(jī)上的瀏覽器打開。打開之后我們點(diǎn)擊瀏覽器的菜單按鈕。進(jìn)入到菜單頁面之后我們點(diǎn)擊下面的展開選項(xiàng)展開。展開了全部菜單功能之后就可以看到我的下載選項(xiàng)了。點(diǎn)擊進(jìn)入到我的下載頁面,在這個(gè)頁面下我們?cè)谝严螺d就可以找到我們下載的歷史記錄了。如果沒有出現(xiàn)在已下載里面的話我們點(diǎn)擊右上角的菜單。點(diǎn)擊這個(gè)菜單下面的文件管理直接進(jìn)入到我們文件下載存放的文件夾目錄中查找即可。
分為:內(nèi)部存儲(chǔ)和外部存儲(chǔ)
如何區(qū)分內(nèi)部存儲(chǔ)和外部存儲(chǔ):可以從物理和邏輯區(qū)分
從物理的角度區(qū)分,內(nèi)部存儲(chǔ)就是手機(jī)自帶存儲(chǔ)空間,外部存儲(chǔ)就是外部接入的存儲(chǔ)空間例如SD卡
從邏輯意義上區(qū)分,data,system 目錄就是手機(jī)的內(nèi)部存儲(chǔ),而 mnt 或者 storage目錄下的sdcard0指向的sdcard目錄就是外部存儲(chǔ)。如果是手機(jī)自帶的外部存儲(chǔ)被稱為機(jī)身外部存儲(chǔ),外置的SD卡則稱之為外部存儲(chǔ)。當(dāng)然兩者都稱為外部存儲(chǔ)也沒關(guān)系。這里描述的內(nèi)部存儲(chǔ)和機(jī)身外部存儲(chǔ)都屬于機(jī)身存儲(chǔ);
邏輯區(qū)分是從4.4以上版本開始的;
獲取內(nèi)部存儲(chǔ)路徑和api對(duì)應(yīng)關(guān)系
1,通過Environment
2,通過上下文Context
Build.VERSION_CODES.LOLLIPOP及以上版本新增的API
Build.VERSION_CODES.N及以上版本新增的API
特點(diǎn):
1、內(nèi)部存儲(chǔ)路徑中的文件是分類存儲(chǔ)的,我們無法干涉,除了cache目錄,別的目錄系統(tǒng)不會(huì)自動(dòng)創(chuàng)建
2、除了files目錄,別的目錄我們幾乎都是無法手動(dòng)操作的
3、別的App幾乎無法訪問內(nèi)部存儲(chǔ)中的數(shù)據(jù),除了用非法手段或者我們主動(dòng)暴露
4、內(nèi)部存儲(chǔ)目錄下的文件夾及文件會(huì)隨著app的卸載而被系統(tǒng)自動(dòng)刪除
外部存儲(chǔ)又可分為共有目錄和私有目錄;
私有目錄
私有目錄:不需要訪問權(quán)限
Android 在外部存儲(chǔ)空間中也提供了特殊目錄供App存放私有文件,該路徑為:/storage/emulated/0/Android/data/包名/
注意:應(yīng)用安裝之后/storage/emulated/0/Android/data/是沒有對(duì)應(yīng)的應(yīng)用文件夾的,需要手動(dòng)調(diào)用對(duì)應(yīng)的API創(chuàng)建;
獲取私有目錄路徑
共有目錄
共有目錄:需要申請(qǐng)權(quán)限才能訪問
權(quán)限:6.0以上需要?jiǎng)討B(tài)申請(qǐng)
獲取共有目錄的API 29中已過時(shí):
getExternalCacheDir().getAbsolutePath();
路徑:/storage/emulated/0/Android/data/packagename/cache
可以作為外部緩存的路徑,卸載app時(shí),會(huì)自動(dòng)刪除文件
Environment.getExternalStorageDirectory().getAbsolutePath();
路徑:/storage/emulated/0
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getAbsolutePath();
路徑:/storage/emulated/0/DCIM
getExternalFilesDir(Environment.DIRECTORY_PICTURES).getAbsolutePath();
路徑:/storage/emulated/0/Android/data/packagename/files/Pictures
在平時(shí)開發(fā)當(dāng)中,我們可能會(huì)糾結(jié)什么文件該存儲(chǔ)在哪個(gè)目錄下面,要么是不確定放哪,要么是放多了以后放亂了。那就弄清楚哪些文件存哪里吧。
總結(jié):
getCacheDir和getFilesDir目錄必須是root的手機(jī)在文件操作系統(tǒng)中才能看到。如果在應(yīng)用程序中清空數(shù)據(jù)或者卸載應(yīng)用,那這兩個(gè)目錄下的文件也將會(huì)被清空。
getExternalCacheDir()與getExternalFilesDir(null)直接在文件系統(tǒng)下Android/data/packagename能看到。如果應(yīng)用卸載,該目錄下的文件會(huì)被刪除掉。
Environment.getExternalStorageDirectory()目錄下創(chuàng)建的文件不會(huì)因程序卸載被清除掉。
Android 10.0不需要再動(dòng)態(tài)申請(qǐng)文件讀寫權(quán)限,默認(rèn)可以讀寫自己的沙盒文件和公共媒體文件。Android 10.0在外部存儲(chǔ)設(shè)備中為每個(gè)應(yīng)用提供了一個(gè)“隔離存儲(chǔ)沙盒”。任何其他應(yīng)用都無法直接訪問自己應(yīng)用的沙盒文件。沙盒,簡(jiǎn)單而言就是應(yīng)用專屬文件夾,并且訪問這個(gè)文件夾無需權(quán)限。谷歌官方推薦應(yīng)用在沙盒內(nèi)存儲(chǔ)文件的地址為Context.getExternalFilesDir()下的文件夾,不能再訪問Environment下的路徑了。
對(duì)于暫時(shí)不想適配的,但是需要訪問文件的,可以把targetSdkVersion設(shè)置為28或以下。
分享文章:android文件路徑,安卓怎么查找文件路徑
分享鏈接:http://muchs.cn/article22/phgecc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、網(wǎng)站導(dǎo)航、關(guān)鍵詞優(yōu)化、網(wǎng)站營(yíng)銷、App開發(fā)、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)