生活随笔
收集整理的這篇文章主要介紹了
Android-Ant自动编译打包android项目 -- 2 ----签名与渠道包
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
上篇介紹了怎么使用ant自動編譯打包現(xiàn)有的android項目,這篇將繼續(xù)介紹如果如何在ant打包應(yīng)用的時候加入簽名信息以及自動打包渠道包。
1. 加入簽名信息:
在項目的根目錄下建一個ant.properties文件,輸入如下內(nèi)容,其中keystore密碼和alias密碼可以不指定(防泄漏),那么在命令執(zhí)行的過程中會要求你輸入。
?
[html]?view plaincopy
#keystore的路徑,必須使用正斜杠??key.store=E:/wp_android_sample/me.key??#keystore的密碼??#key.store.password=*****??#alias名??key.alias=me??#alias密碼??#key.alias.password=******??????? 在項目根目錄下運行 ant release 命令就會幫你生成一個經(jīng)過簽名和aligned的apk,生成的apk(your_project_name-release.apk)在bin目錄下
?
?
2. 自動打包渠道包:
?實現(xiàn)批量循環(huán)打包需要一個類似于for循環(huán)的功能,在Ant的核心包里沒有相關(guān)的For循環(huán)的Task,即不支持for循環(huán),但是ant支持第三方擴(kuò)展包,以支持更多的其他功能。
于是我們要下載相應(yīng)的支持for循環(huán)的擴(kuò)展包。可以使用開源的Ant-contrib包。下載地址:http://ant-contrib.sourceforge.net/??。
下載后的解壓得到的jar文件放到ant的lib目錄。接下來我們就可以打包渠道包了,具體做法是:
(1)首先在ant.properties文件中增加屬性?market_channels (渠道列表,以逗號分割),version(應(yīng)用程序版本名)
#渠道市場列表??market_channels=91,360,wandoujia,baidu??#版本號??version=1.2.1?? ?
(2)在我們項目的build.xml中加入如下代碼:
?
??<taskdef?resource="net/sf/antcontrib/antcontrib.properties">??????<classpath>??????????<pathelement?location="lib/ant-contrib-1.0b3.jar"/>??????</classpath>??</taskdef>????<target?name="deploy">?????<foreach?target="modify_manifest"?list="${market_channels}"?param="channel"?delimiter=",">?????</foreach>??</target>????<target?name="modify_manifest">??? ??<!-- 加上時間戳 -->? ??<tstampprefix="build.">? ? ? ? <formatproperty="TimeSign"?pattern="yyyyMMddHHmm"/>? ??</tstamp>????<replaceregexp?flags="g"?byline="false">??????????????????<regexp?pattern='android:value="(.*)"?android:name="UMENG_CHANNEL"'?/>??????????????????<substitution?expression='android:value="${channel}"?android:name="UMENG_CHANNEL"'?/>????????????????????<fileset?dir=""?includes="AndroidManifest.xml"?/>??????</replaceregexp>??????<property?name="out.release.file"?location="${out.absolute.dir}/${ant.project.name}_${channel}.apk"?/>??????????<antcall?target="release"?/>??????????<copy?tofile="${out.absolute.dir}/out/${ant.project.name}v${version}-${channel}.apk"?file="bin/${ant.project.name}-release.apk"/>??</target>??
在項目根目錄下運行?ant clean 無誤后再運行?ant deploy 命令就會幫你各個渠道的簽名包了(為了全程可以自動執(zhí)行,ant.properties文件中的keystore的密碼可以指定,這樣在執(zhí)行過程中就不需要手動輸入密碼了),在bin目錄的out目錄下。
轉(zhuǎn)載于:https://www.cnblogs.com/ws5861/p/4250947.html
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的Android-Ant自动编译打包android项目 -- 2 ----签名与渠道包的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。