1. 程式人生 > >Android原始碼解析-Android的構建過程(一)

Android原始碼解析-Android的構建過程(一)

Google官方為我們提供的詳細的構建過程圖

1、aapt(Android Asset Packaging Tool)工具會將資原始檔進行轉化,生成對應資源ID的R檔案和資原始檔,比如Androidmanifest.xml,Layout中xml檔案等編譯為二進位制形式,assets資料夾中、raw資料夾中以及圖片等會以原始檔儲存,但注意的的是raw資料夾中的資源也會生成資源Id。
2、AIDL工具會將所有的AIDl介面轉換成Java介面
3、Java Compiler將所有java檔案編譯成Class檔案;比如R檔案,Java原始碼,由aidl轉化來的Java介面等。
4、Dx工具將.class生成.dex檔案(dex檔案是Dalvik虛擬機器可以執行的格式),dex檔案最終會被打包進APK檔案
5、ApkBuilder工具會將編譯過的資源及未編譯過的資源(如圖片等)以及.dex檔案打包成APK檔案,但這個檔案不能直接安裝在android系統上
6、通過簽名工具對其進行簽名
7、zipalign工具對APK進行對齊操作,這樣做的好處是當應用執行時會提高速度,但是相應的會增加記憶體的開銷。簽名完成之後就是一個可以在手機安裝的apk檔案了

參考文獻: