Android原始碼是如何自動生成apk檔案的
阿新 • • 發佈:2019-02-07
官方版(典型的構建流程圖)
說明:
aapt(Android Asset Packaging Tool)給你的Activity提供所需的資原始檔,如 AndroidManifest.xml,XML檔案,並編譯它們。同時產生R.java檔案,使你可以在java程式碼中引用這些資源。–(我覺得是建立專案時自動生成的檔案)
aidl工具把.aidl介面轉換成Java介面。
你所有的Java程式碼,包括 R.java和 .aidl檔案,由Java編譯器Java Compiler和編譯輸出.class檔案。
dex工具把.class檔案轉換成Dalvik位元組檔案,第三方的類和.class也被轉換成.dex檔案
所有無法編譯的資源(比如圖片),編譯好的資原始檔和.dex都被送到apkbuilder工具中,生成最後的.apk
生成.apk時必須制定是debug還是release,release還要提供相應的key
如果選擇release版本,還需要使用zipalign工具對apk對齊。齊處理即使得所有資原始檔距離檔案起始偏移為4位元組的整數倍,這樣通過記憶體對映訪問apk檔案時處理速度更快。
生成的apk在哪裡?
生成的apk在建立專案的路徑\專案名\app\build\outputs\apk目錄下,命名規則 app-XX.apk,例如,目錄F:\AndroidApps\CeWidgets\app\build\outputs\apk下的,
app-debug.apk