官網給了我們一張非常簡單的編譯、打包、apk生成內容以及簽名的。大體介紹了從project到執行到裝置或者模擬器的乙個大體流程,我們也從中看到乙個完整的apk包含如下內容:乙個或多個dex檔案、resources.arsc、未編譯的資源檔案以及androidmanifest.xml檔案等等
由android的專案經過編譯和打包,形成了:
.dex 檔案resources.arscuncompiled resourcesandroidmanifest.xml
解壓了乙個普通的apk檔案,解壓出來的檔案如下:
這個是對每個檔案的頭3行進行sha1 hash。
signature-version: 1.0
x-android-apk-signed: 2
sha1-digest-manifest: qxofccauqtznhh0yrnnoxmiht80=
created-by: 1.0 (android)
name: res/drawable-xhdpi-v4/abc_scrubber_control_to_pressed_mtrl_005.png
sha1-digest: i9s6aq5vyolrno4odqsij549oyo=
name: res/drawable-mdpi-v4/abc_textfield_search_default_mtrl_alpha.9.png
sha1-digest: d6dilo+umcglambujymohnblzuy=
……
cert.rsa
這個檔案儲存了簽名和公鑰證書。
--values。這類資源以xml檔案儲存在res/values目錄下,用來描述一些簡單值,例如,陣列、顏色、尺寸、字串和樣式值等,一般來說,這六種不同的值分別儲存在名稱為arrays.xml、colors.xml、dimens.xml、strings.xml和styles.xml檔案中。
--xml。這類資源以xml檔案儲存在res/xml目錄下,一般就是用來描述應用程式的配置資訊。
參考:
Ant打包生成apk
由於專案中需要根據不同的渠道來進行打包,通過eclipse打包過程非常繁瑣,並且因為eclipse打包對記憶體要求比較高,經常會出現打包過程中eclipse記憶體溢位的問題。後面了解到ant是乙個非常不錯的工具,於是翻閱了很多文章來進行了解。不斷嘗試下終於打包成功。環境 eclipse apache...
gradle命令打包apk
1.之前一直用android studio 的generate signed apk方式打包apk,最近同事都是用命令列來打包 感覺逼格有點高,學習了下以記錄,前提是要在module的build.gradle 檔案下匹配值如下檔案 2.開啟cmd命令列,使用gradle命令 3.如果沒有配置grad...
打包和優化apk
apk做好之後,需要以後的版本更新維護,需要使用相同的簽名,程式才能成功覆蓋已有程式。簽名製作 通過eclipse實現簽名 選擇簽名檔案或重新生成 最後選擇要生成apk的目錄 確定生成完成 具體參考 優化apk zipalign v 4 demo signed.apk final.apk 優化到4個...