Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android APK安裝目錄區別

Android APK安裝目錄區別

編輯:關於Android編程

從Android2.2開始,應用程序可以不安裝到內部存儲器而選擇安裝到外部存儲器(ApplicationInfo.FLAG_EXTERNAL_STORAGE)去,比如SD卡上,所以,從Android APK的常見安裝位置有如下三個:/sdcard/app、/data/app、/system/app。

我們排除應用程序的Manifest.xml自我描述權限問題,我們只關注這些目錄的權限約定和存儲內容區別,比較結果如下。

一、/sdcard/app

該目錄完整路徑為/mnt/sdcard/app,默認群組root:root,權限777,用於存儲用戶任何資料,包括作為程序的安裝目錄。

二、/data/app

主要包括用戶自安裝應用程序、更新、緩存等,默認群組system:system,權限771,用戶常規權限可以卸載,如果在recovery中執行wipe命令會自動清理該目錄下apk,此外,應用程序的數據庫會默認存儲在/data/data/PackageName/下,包括下面的系統應用程序數據庫也默認在此。

三、/system/app

該目錄主要包括系統集成時自帶的應用程序,默認群組root:root,權限755, 只有root權限者才可刪除。

以上目錄權限只是某個品牌手機的默認權限,當然實際定制時均可以在init.rc中改掉。

四、/data/dalvik-cache

/data/dalvik-cache目錄用於存儲.apk中的dex文件,.dex文件是dalvik虛擬機的可執行文件,大小約為原始apk文件大小的四分之一。

實際安裝過程如下:

  • 復制APK安裝包到data/app目錄下
  • 解壓並掃描檢查apk,驗簽,把dex文件(Dalvik字節碼)保存到dalvik-cache目錄
  • 在data/data目錄下創建對應的應用數據目錄。

卸載過程則相反,刪除上述創建的文件即可。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved