首先內部存儲路徑爲/data/data/youPackageName/,下面講解的各路徑都是基於你自己的應用的內部存儲路徑下。所有內部存儲中保存的文件在用戶卸載應用的時候會被刪除。
一、 files
- Context.getFilesDir(),該方法返回/data/data/youPackageName/files的File對象。
- Context.openFileInput()與Context.openFileOutput(),只能讀取和寫入files下的文件,返回的是FileInputStream和FileOutputStream對象。www.2cto.com
- Context.fileList(),返回files下所有的文件名,返回的是String[]對象。
- Context.deleteFile(String),刪除files下指定名稱的文件。
二、cache
- Context.getCacheDir(),該方法返回/data/data/youPackageName/cache的File對象。
三、custom dir
getDir(String name, int mode),返回/data/data/youPackageName/下的指定名稱的文件夾File對象,如果該文件夾不存在則用指定名稱創建一個新的文件夾。
一些路徑的標準寫法
Environment.getDataDirectory() = /data
Environment.getDownloadCacheDirectory() = /cache
Environment.getExternalStorageDirectory() = /mnt/sdcard
Environment.getRootDirectory() = /system
context.getCacheDir() = /data/data/com.mt.mtpp/cache
context.getExternalCacheDir() = /mnt/sdcard/Android/data/com.mt.mtpp/cache
context.getFilesDir() = /data/data/com.mt.mtpp/files
使用adb查看apk內存儲數據:【手機有root權限】
adb shell
su -
cd data/data/airfight.dawx.com/
ls
下面包含了四個文件見 files cache lib database
使用adb獲取數據:
adb push D:\file.txt system/
adb pull system/file.txt D:/
apk的安裝卸載流程:
應用安裝涉及到如下幾個目錄:
system/app
系統自帶的應用程序,無法刪除
data/app
用戶程序安裝的目錄,有刪除權限。
安裝時把apk文件複製到此目錄
data/data
存放應用程序的數據
Data/dalvik-cache
將apk中的dex文件安裝到dalvik-cache目錄下(dex文件是dalvik虛擬機的可執行文件,其大小約爲原始apk文件大小的四分之一)
安裝過程:複製APK安裝包到data/app目錄下,解壓並掃描安裝包,把dex文件(Dalvik字節碼)保存到dalvik-cache目錄,並data/data目錄下創建對應的應用數據目錄。
卸載過程:刪除安裝過程中在上述三個目錄下創建的文件及目錄