最近剛忙完了一個項目,本以為可以好好放松一下了,沒想到客戶提了一個變態(tài)的要求,同時要打包上線100多個渠道,需要替換圖標,啟動頁還有一堆煩人的參數(shù),粗略估計一個一個打包,至少兩天時間,真是醉了。心中一陣草泥馬飛過之后,想著自己的尾款還沒到賬,只能硬著頭皮搞一個自動化的打包腳本。
創(chuàng)新互聯(lián)公司是一家專注于做網(wǎng)站、成都網(wǎng)站制作與策劃設(shè)計,高明網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:高明等地區(qū)。高明做網(wǎng)站價格咨詢:135182197921、首先安裝ant ,下載地址http://ant.apache.org/不會安裝的可以參考http://yarin.blog.51cto.com/1130898/692569。
2、利用Ant批量打包的基本思想是,每次打包后自動替換渠道號,以及自己要替換的參數(shù),比如本demo就要不僅要替換渠道號,一些參數(shù),還要替換圖標和啟動頁面。
這樣帶來了一個問題:Ant不支持循環(huán),怎樣循環(huán)打包?
擴展包Ant-contrib能輕松解決這個問題
可以×××的同學(xué)可以到http://ant-contrib.sourceforge.net/自行下載,或者去我的云空間下載http://pgyer.qiniudn.com/ant-contrib-1.0b3.jar,下載后直接把ant-contrib-1.0b3.jar放到Ant的lib文件夾即可。
3、生成并改寫build.xml 執(zhí)行如下命令
android update project --name testbyfrank -t 1 -p /Users/frank/Documents/workspace/testbyfrank
此命令在當前的工程目錄生成build.xml, -t 表示targetid 可以通過android list targets查看 -p 指定工程目錄
修改build.xml 代碼見demo
4、生成ant.properties 內(nèi)容如下:market_channels是用來替換的參數(shù)以:和-分割。
java.encoding=utf-8
out.absolute.dir=/Users/frank/Documents/publish_testbyfrank
gos.path=/Users/frank/Documents/publish_testbyfrank_bin
proguard.config=proguard.cfg
app_version=1.5
market_channels=\u65B0\u77E5:60-xinzhi,\u897F\u5149:18-xiguang
5、project.properties文件中打開混淆代碼,去掉下面所在行的#
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
6、編寫proguard-project.txt,demo中有,大家自行刪減
6、執(zhí)行命令ant deploy就慢慢等待生成的多渠道的apk吧
7、最后在目錄/Users/frank/Documents/publish_testbyfrank_bin下生成了兩個apk
testbyfrank_xiguang.apk 和testbyfrank_xinzhi.apk
自己抽離出來的demo已經(jīng)經(jīng)過我的測試沒有問題,大家可以通過http://pgyer.qiniudn.com/testbyfrank.zip下載示例代碼。
注意事項及可能遇到的問題
1.工程如果引用到其它類庫工程,請先生成類庫的build.xml
2.如果提示invalid resource directory name: /Users/frank/Documents/workspace/appcompat_v7/bin/res/crunch等類似的錯誤請先手動刪除bin目錄,重新執(zhí)行ant deploy命令
3.如果出現(xiàn)Can't read [/Users/frank/Documents/workspace/testbyfrank/libs/Android_Location_V1.1.0.jar] (No such file or directory)類似的錯誤,表明你沒有用到這個類庫,請在混淆文件中去掉對應(yīng)的即可。
4.如果xml文件有用到自定義的控件,對應(yīng)的java文件不能混淆
5.如果用的gson的庫,對應(yīng)的實體類不可以混淆。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。
網(wǎng)站名稱:Ant多渠到混淆打包-創(chuàng)新互聯(lián)
本文URL:http://jinyejixie.com/article44/jghhe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站收錄、企業(yè)建站、動態(tài)網(wǎng)站、外貿(mào)建站、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容