往往一個軟體的IOS越獄包需要很多渠道,以前我是修改一次渠道號,然後再重新打包,但隨著越來越多的渠道號,讓我望而生畏,只能找個自動的打包語句了。用shell語句很輕鬆的搞定此問題。
分析一下,多個渠道的越獄包的不同之處,就是有一個渠道號不一樣,其他的代碼都一樣。而自動產生多渠道越獄包,也只是修改包中的一個渠道號。
思路:
a、先準備越獄包(例如TableTest.ipa)。
b、解壓此越獄包,將產生payload檔案夾。
c、修改channelID.txt檔案中的渠道號。
d、壓縮payload檔案夾,產生TableTest_1003.ipa
1。前提是TableTest.ipa中的渠道號是單獨寫到一個檔案中的,檔案名稱是channelID.txt,裡面的格式是:
10001:
10002:
2。建立個ipatest檔案夾,把TableTest.ipa和channelID.txt放到此檔案夾中,然後在ipatest檔案夾中建立個package檔案夾,用於存放產生的包。
3。shell代碼如下,開啟終端,並且切換到ipatest檔案夾下,拷貝下邊代碼即可,產生的越獄包將存放到package中。
#!/bin/shsourceipaname="/Users/dianxing/Desktop/shellTest/TableTest.ipa"appname="TableTest.app"distDir="/Users/dianxing/Desktop/shellTest/package/"version="2.5"unzip $sourceipanamefor line in $(cat channelID.txt) doipafilename=`echo $line|cut -f1 -d':'`echo "ipafilename=$ipafilename" targetName=`echo tabletest_${version}_${ipafilename}` echo "ipafilename =$ipafilename" cd Payload cd $appname echo "$ipafilename" > sourceid.txt cd ../.. zip -r "${targetName}.ipa" Payloadmv "${targetName}.ipa" $distDir done