【筆記】odex , vdex ,art 檔案區別
阿新 • • 發佈:2019-02-18
1.vdex
package 直接轉化的 可執行二進位制碼 檔案:
1.第一次開機就會生成在/system/app/<packagename>/oat/ 下;
2.在系統執行過程中,虛擬機器將其 從 “/system/app” 下 copy 到 “/data/davilk-cache/” 下
2.odex
odex 是從vdex 這個檔案中 提取了部分模組生成的一個新的 可執行二進位制碼 檔案 , odex 從vdex 中提取後,vdex 的大小就減少了。
1.第一次開機就會生成在/system/app/<packagename>/oat/ 下
2.在系統執行過程中,虛擬機器將其 從 “/system/app” 下 copy 到 “/data/davilk-cache/” 下
3.odex + vdex = apk 的全部原始碼 (vdex 並不是獨立於odex 的檔案 odex + vdex 才代表一個apk )
3.art
odex 進行優化 生成的 可執行二進位制碼 檔案,主要是apk 啟動的熱點函式相關地址的記錄,方便定址相關;
1.第一次開機不會生成在/system/app/<packagename>/oat/ 下,以後也不會;
2.odex 檔案在執行時,虛擬機器會計算函式呼叫頻率,進行函式地址的修改;
3.最後在/data/davilk-cache/ 由虛擬機器生成;