Android系統中的 apk檔案和dex檔案

2021-07-25 16:11:07 字數 777 閱讀 2468

1. *.apk檔案

apk是android package的縮寫,即android安裝包。通過將apk檔案直接傳到android模擬器或android手機中執行即可安裝。

使用android打包工具(aapt)將dex檔案,資源檔案以及androidmanifest.xml檔案組合成乙個應用程式包(apk)。dex是dalvik vm executes的全稱,即android dalvik執行程式。

android在執行程式時首先需要解壓apk檔案,然後獲取編譯後的androidmanifest.xml檔案中配置資訊,執行dex程式。

2..dex檔案

dex是dalvik vm executes的全稱,即android dalvik執行程式,通常執行時都進行優化 。優化後的檔案大小會有所增加。 優化發生的時機有兩個:對於預置應用,可以在系統編譯後,生成優化檔案,以odex結尾。這樣在發布時除apk檔案(不包含dex)以外,還有乙個相應的android dex檔案;對於非預置應用,包含在apk檔案裡的dex檔案會在執行時被優化,優化後的檔案將被儲存在快取中。

zygote是乙個虛擬機器程序,同時也是乙個虛擬機器例項的孵化器,每當系統要求執行乙個 android應用程式,zygote就會fork出乙個子程序來執行該應用程式。這樣做的好處顯而易見:zygote程序是在系統啟動時產生的,它會完成虛擬機器的初始化,庫的載入,預置類庫的載入和初始化等等操作,而在系統需要乙個新的虛擬機器例項時。

zygote通過複製自身,最快速的提供個系統。另外,對於一些唯讀的系統庫,所有虛擬機器例項都和zygote共享一塊記憶體區域,大大節省了記憶體開銷。

Android 獲取手機中已安裝apk文

眾所周知,通過packagemanager可以獲取手機端已安裝的apk檔案的資訊,具體 如下 view plain copy to clipboard print?packagemanager packagemanager this.getpackagemanager listpackageinfo...

Android系統中的 apk檔案和dex檔案

1.apk檔案 apk是android package的縮寫,即android安裝包。通過將apk檔案直接傳到android模擬器或android手機中執行即可安裝。使用android打包工具 aapt 將dex檔案,資源檔案以及androidmanifest.xml檔案組合成乙個應用程式包 apk...

Android內建系統apk問題

平台 rockchip android版本 7.1 個人部落格 檢視logcat 下面是關鍵log 03 12 10 48 50.247 1381 1381 e androidruntime process com.android.settings,pid 1381setting apk找不到32位...