1. 安卓 文件夾目錄整理
記錄一下開發中遇到的一些目錄。
在開發中會有內部存儲器(Internal Storage)和外部存儲器(External Storage)。
內部存儲,路徑:data/data/packageName/(此部分的根目錄)。這個目錄下的文件為應用私有的,其他的應用是無法訪問的。同時此目錄下的文件是會隨應用的卸載而被刪除。 讀寫此目錄下的文件是不需要許可權的。
- getDir(String name, int mode) 返回對應目錄下的枝激File文件夾對象。
- getFilesDir() 返回根目錄/files文件夾, Context.openFileInput() 和 Context.openFileOutput 都是這個文件夾。
- fileList() 返回的是files下的所有文件名
- deleteFile(String name) 刪除files下指定名稱的文件。
- getCacheDir() 該方法返回的是根目錄/cache的File對象.當android的內部猛轎襪存儲容量過低時,android會自動清除緩存文件
外部儲存,在此存儲數據是不安全的。在這部分存儲,個人可以分為兩個部分來總結。
1.本應用相關目錄
此部分路徑為/storage/emulated/0/Android/data/packageName/。此目錄下的文件會隨軟體的卸載而被刪除。 在4.4之後讀寫此目錄下的文件不需要許可權 。但是這個目錄下的文件可以被用戶以及帶有 WRITE_EXTERNAL_STORAGE 或 WRITE_EXTERNAL_STORAGE 許可權的應用讀取或修改。
- getExternalFilesDir(String type) 返回/storage/emulated/0/Android/data/packageName/files/type文件夾,若type為 null 則返回/storage/emulated/0/Android/data/packageName/files文件夾。
- getExternalCacheDir() 返回帆空/storage/emulated/0/Android/data/packageName/cache文件夾
2.外部自定義目錄
除1以外的目錄。讀寫這部分文件需要 WRITE_EXTERNAL_STORAGE 或 WRITE_EXTERNAL_STORAGE 許可權, 6.0以上需要運行時許可權。這部分文件是不會隨應用被卸載而刪除。
- Environment.getExternalStorageDirectory() 返回/storage/emulated/0文件。
2. Android手機內存卡中的文件夾分別代表什麼軟體
SD卡中的文件夾,基本上都是系統軟體和第三方軟體的數據存儲的地方。一般看文件夾名稱就能看出是屬於哪個軟體的。比如tencent,就是騰訊的英文名,自然就是QQ和微信的數據所在地。微信傳送的圖片什麼的,都在這里。
另外,常見的文件夾名稱及其作用如下:
一、系統數據類——系統文件存儲相關文件夾
1、.android_secure:官方app2sd的產物,存儲了相關的軟體使用認證驗證,刪除之後SD卡中的軟體將無法使用。
2、Android:存放重要的程序數據,比如google:map的地圖緩存,誤刪掉後地圖還需重新下載。
3、backups:包含重要的備份文件,比如聯系人導出到局首SD卡會導入到此文件夾。
4、bugtogo:系統出現問題的時候會形成一些報告文件,存放在此文件夾。
5、data:緩存數據文件夾,與Android類似。例如,「截圖助手」截圖保存在datacom.edwardkim.android.screenshotitfullscreenshots里。
6、LOST.DIR:卡上丟失或出錯的文件會移動到這里,此目錄刪了會自動生成。
7、SystemAppBackup:SystemAppremove(深度卸載)備份系統文件後,備份文件保存的目錄。
8、bugreports:升級系統或刷機,系統和程序發生兼容錯誤報告列表(包括內存使用全部內容)將保存在這個文件,重起機器可以刪除。
9、.keepsafe:隱藏類的軟體、加密保存文件地址存放於此。
10、.thumbs:瀏覽或使用某一軟體,以及使用某一文件夾後用於記錄次數和內容的文件,隨機產生,需要定期不斷清除,長時間不清理會大量佔用儲存卡的有效空間。
11、openfeint:打開聯接網路後的一個啟動程序,它廣泛植入移動類平台發布的軟體鏈型或游戲,是更新下載或評論反饋信息的記錄地址,可刪除。
12、com:播放類軟體在收看播放影視節目生成的文件將存放於此,可以對製作方反映回饋信息,可以刪除。
13、Download(download):大寫字母的是網路聯接下載文件目錄,小寫字母的是手機自身(藍牙,近場等)存放下載傳輸文件,不要誤刪。
二、系統工具類——系統自帶工具相關文件夾
1、albumart:音樂專輯封面的緩存文件夾。
2、albums:相冊縮略圖的緩存文件夾。
3、cmp:音樂的緩存文件夾。
4、Playlists:播放列表的緩存文件夾。
5、DCIM:相機隨機緩存文件夾,記錄功能設置的參數,需要及時清理。一些第三方相機軟體拍出的相片也會保存在這里,比如360或暈影相機等。
6、VPN:VPN數據的緩存目錄。
7、Mydocuments:手機啟用各種程序任務記錄的文檔,需要定期清除,長時間不清理會佔用SD卡較大內存。
8、.nomedia:手機中隱藏的音頻、圖片文件夾都會在這里顯示,可以自設在相關文件夾中。
9、media:使用電話通話錄音軟體或在線瀏覽視頻等媒體產生的音頻文件記錄存檔將保存在此。
10、.medieval_software:啟用藍牙傳輸軟體時,記錄任務保存文件的目錄。
11、extracted:解壓縮軟體默認的解壓目錄。
三、第三方應用類
1、.mobo:Moboplayer的緩桐喚數存文件。
2、.QQ:QQ的緩存文件,需要定期清除。
3、.quickoffice:quickoffice的緩存文件。
4、.switchpro:switchprowidget(多鍵開關應用)的緩存文件。
5、.ucdlres:UC迅雷的緩存文件。
6、:掌上網路、網路輸入法之類程序的緩存文件夾。
7、etouch:易行的緩存文件夾。
8、documents:DocumentsToGo的相關文件夾。
9、gameloft:gameloft游戲數據包存放的文件夾。
10、handcent:handcent(超級簡訊)數據文件夾。
11、handyCurrency:貨幣匯率相關的文件夾,裝了handycalc(科學計算器)之後才會有。
12、ireader:ireader的緩存文件夾。
13、KingReader:開卷有益的緩存文件夾:下載的文件和應用都在這兒:刪除時留意看清
14、LazyList:Applanet的緩存目錄,慎重使用。
15、moji:墨跡天氣的緩存目錄。
16、MusicFolders:poweramp產生的緩存文件夾。
17、openfeint:openfeint的緩存文件夾。
18、Picstore:圖片瀏覽軟體建立的一個目錄。
19、renren:人人網客戶端的緩存文件夾。
20、screenshot:截屏圖片保存的目錄。
21、ShootMe:shootme截屏後圖片文件保存的目錄。
22、SmartpixGames:SmartpixGames出品游戲的緩存文件夾,比如Jewellust。
23、sogou:搜狗拼音輸入法的隨機緩存文件夾,可以刪除。
24、SpeedSoftware:RE文件管理器的緩存文件夾。
25、TalkingFriends:talkingtom(會說話的tom貓)錄制的視頻文件所保存的目錄。
26、Tencent:騰訊軟體的緩存目錄,比如QQ。(與上面的.QQ文件夾並不相同)
27、TitaniumBackup:鈦備份備份的程序所保存的目錄。
28、TunnyBrowser:感覺是海豚瀏覽器的緩存目錄,但為什麼叫這個名字?金槍魚瀏覽器...。.
29、UCDLFiles:UC迅雷下載文件的保存目錄。
30、UCDownloads:UC瀏覽器下載文件緩存的保存目錄。
31、VIE:Vignette(暈影相機)的緩存目錄。
32、yd_historys:有道詞典搜索歷史的緩存目錄
33、yd_speech:有道詞典單詞發音的緩存目錄。
34、youmicache:刪掉後還會自動生成,悠米廣告的緩存目錄,廣告程序內嵌在其程序中。
35、Glu:Glu系列游戲的資料包存放地,如3D獵鹿人,勇猛二兄弟等。
36、apadqq-images:QQforpad的緩存目錄。
37、DunDef:地牢守護者的數據包。
38、KuwoMusic:酷我音樂的相關文件夾。
39、MxBrowser:遨遊的緩存目錄。
40、Camera360:相機camera360的隨機緩存目錄,可以定期清除。
41、TTPod:天天動聽的緩存目錄。
42、downloaded:刷了MIUI,升級後的ZIP刷機包,保存在downloaded_rom里。
43、.estrongs:當你使用了ES文件管理器解壓文件,會有這個緩存記錄。它反映使用進程,可以刪除。
44、silentR:用了後台錄音軟體,自生的音頻文件夾,子文件夾phoneCalls,定期管理清除
45、3D-compass:這是使用實景指南針軟體,生成的景象圖片(圖像和數字比較詳細)文件夾,可以清除。
46、PDF:可移植文檔格式,Pdf閱讀器存儲文件夾。
47、Zidanyou:是字典的詞庫文件儲存,刪除了要重新下載詞庫。
48、Callrecords:採用第三方強制雙向錄音軟體(手機未root),音頻文件保存。
49、VPlayerPro:是MOBO等視頻播放器使用後的記錄定期刪除。
50、BeWeather(Videos):是氣象類軟體(如黑莓天氣.。.等)附加下載音頻或動畫圖標的儲存地址,刪除了會無圖無聲顯示。
51、thumbnails:用第三方播放器觀看手持移動類視頻媒體時,存放點擊暫停、隨機截圖以及文件儲存時產生的內容。
52、iQuran(meta2):可蘭經瀏覽文本和音頻的儲存文件。
53、Autodesk:手機系統自帶存儲器命令生成文件夾:儲存圖像或編寫文稿,可以查看、備份或者刪除。
54、PixlrOMatic:後期特效處理圖片軟體Pixlo,儲存文件夾,打開可以預覽看效果。
55、mapbar:圖吧導航地圖存放文件,有必須主文件和不同地區具體地圖,主文件刪掉要重下!
56、antTTS:是使用了高德導航選擇語音種類導航、語種的下載地址,刪掉了語音提示會丟失。
57、kingsoft:金山詞霸專用文件夾下載儲存詞庫、更新拓展文匯(官方發布修正補充)。
58、NightVisionCamera:夜間拍照相機相片存放的地址。
59、DSA:電子狗專用夾,收錄各地區道路探頭監控位置信息,會定期更新。已測試配合高德、凱立德提前預警,效果不錯。
60、apexlauncher:尖端桌面啟動器文件夾,位置在andriod/data/,放置桌面設置備份bak文件。
3. android的file:///路徑在項目文件中的哪裡啊
通過點擊Eclipse菜單「Window」-「Show View」-「Other」,在對話窗口中展開android文件夾,選擇下面的File Explorer視圖,然後在File Explorer視圖中展開/data/data/<package name>/files目錄就可以看到該文件。
4. Android存儲及路徑
分為:內部存儲和外部存儲
如何區分內部存儲和外部存儲:可以從物理和邏輯區分
從物理的角度區分,內部存儲就是手機自帶存儲空間,外部存儲就是外部接入的存儲空間例如SD卡
從邏輯意義上區分,data,system 目錄就是手機的內部存儲,而 mnt 或者 storage目錄下的sdcard0指向的sdcard目錄就是外部存儲。如果是手機自帶的外部存儲被稱為機身外部存儲,外置的SD卡則稱之為外部存儲。當然兩者都稱為外部存儲也沒關系。這里描述的內部存儲和機身外部存儲都屬於機身存儲;
邏輯區分是從4.4以上版本開始的;
獲取內部存儲路徑和api對應關系
1,通過Environment
2,通過上下文Context
Build.VERSION_CODES.LOLLIPOP及以上版本新增的API
Build.VERSION_CODES.N及以上版本新增的API
特點:
1、內部存儲路徑中的文件是分類存儲的,我們無法干涉,除了cache目錄,別的目錄系統不會自動創建
2、除了files目錄,別的目錄我們幾乎都是無法手動操作的
3、別的App幾乎無法訪問內部存儲中的數據,除了用非法手段或者我們主動暴露
4、內部存儲目錄下的文件夾及文件會隨著app的卸載而被系統自動刪除
外部存儲又可分為共有目錄和私有目錄;
私有目錄
私有目錄:不需要訪問許可權
Android 在外部存儲空間中也提供了特殊目錄供App存放私有文件,該路徑為:/storage/emulated/0/Android/data/包名/
注意:應用安裝之後/storage/emulated/0/Android/data/是沒有對應的應用文件夾的,需要手動調用對應的API創建;
獲取私有目錄路徑
共有目錄
共有目錄:需要申請許可權才能訪問
許可權:6.0以上需要動態申請
獲取共有目錄的API 29中已過時: