android開發使用SDK與ANT實現自動打包(混淆、簽名)

android 開發中,現有的開發工具ADT與Studio,而Studio中打包較簡單,方便,這裏呢就不多講了,至於在ADT中打包,也有幾種方法,ADT自帶的,繁瑣、麻煩,易出錯,也有寫ant腳本自動執行的,這裏呢我介紹一種很簡單的方式。

它是使用SDK自帶的ant文件下的build.xml,路徑sdk\tools\ant\build.xml,

需要安裝ANT,至於ANT的安裝與環境變量的配置,網上很多,就不多說了,

之後就可以自動打包了,我使用cmd命令行,寫成bat腳本執行:

title consignor打包&& D: && cd D:\workspace\ifm-android-common&& android update lib-project -p ./&& cd D:\workspace\ifm-android-update&& android update lib-project -p ./&&  cd  D:\workspace\ifm-android-image&& android update lib-project -p ./&&  cd  D:\workspace\ifm-android-consignor&& android update project --name ifm-android-consignor -t android-19  -p  D:\workspace\ifm-android-consignor&& android update project --name consignor -t android-19  -p ./ --subprojects&& ant release&&   echo   ------------------    恭喜你使用BAT成功打包    ------------------& pause

上面的命令之間不可以打回車!下面的拆分只是爲講解方便

title consignor打包              --------cmd顯示標題

&&  cd  D:\workspace\ifm-android-consignor                  --------定向到android工程路徑

&& android update project --name ifm-android-consignor -t android-19  -p  D:\workspace\ifm-android-consignor      --------更新D:\workspace\ifm-android-consignor下的  project.properties,local.properties,build.xml

其中project.properties寫明瞭我們的android SDK的版本,混淆文件目錄,引入的library。

其中local.properties寫明瞭我們的android SDK的目錄(其實是環境變量ANDROID_HOME的值,所以如果環境變量中沒有這個的,請增加)。

build.xml則是ant構建的最重要腳本,生成的這個build.xml引用了android SDK自帶的構建腳本。

&& ant release

讓  library 支持ant自動編譯:

&& android update project --name consignor -t android-19  -p ./ --subprojects      ---------consignor(打包後的apk名字)

&& D: && cd D:\workspace\ifm-android-common          

&& android update lib-project -p ./

&& cd D:\workspace\ifm-android-update

&& android update lib-project -p ./

&&  cd  D:\workspace\ifm-android-image

&& android update lib-project -p ./


另外在相關的.properties中可以添加打包所需的keyStore與是否混淆及混淆文件的路徑(默認${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt),

如果想要自定義混淆格式,可以通過修改路徑的方法使用自己的混淆文件。



有的時候我們打包是由於包含一些svn等文件,需要對build.xml進行修改,忽略掉這些文件

 <property name="aapt.ignore.assets" value="crunch:!.svn" />


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章