幾行shell幫你的xcode迅速自動批量打包ipa

jiufreeman發表於2020-04-07
因工作需要,要用xcode打包過百個渠道的ipa包
每個包只要修改一個plist檔案
如果手動去做,這會是一件很蛋疼的事
 
查了google中英文資料後
發現了有applescript和shell方法
applescript也是要允許sheel的。
所以直接用terminal直接執行你寫好的sh檔案就行了。[把sh 拖到 terminal裡面 回車]
元旦倒數後寫出了下面shell 並且打包成功
現在拿出來分享一下
 
#!/bin/sh
CONFIG_ROOT_PATH="/Users/jc/Desktop/yourproject/"
cd $CONFIG_ROOT_PATH
#迴圈陣列
CHANNELID=("aaa" "bbb" "ccc")
CHANNEL_SECRET=("111" "222" "333")
for ((i=0;i<${#CHANNELID[@]};i++))
do
#刪除
rm -rf "/Users/jc/Desktop/yourproject/build/"
#清除
  xcodebuild -target woMusic clean
    echo ${CHANNELID[$i]}
    echo ${CHANNEL_SECRET[$i]}
    #修改plist
    /usr/libexec/PlistBuddy -c "set :CHANNELID ${CHANNELID[$i]}" /Users/jc/Desktop/yourproject/woMusic/AppConfig.plist
    /usr/libexec/PlistBuddy -c "set :CHANNEL_SECRET ${CHANNEL_SECRET[$i]}" /Users/jc/Desktop/yourproject/woMusic/AppConfig.plist
    #打包
    xcodebuild -target woMusic -configuration Distribution -sdk iphoneos build
    #生成ipa
    xcrun -sdk iphoneos PackageApplication -v "/Users/jc/Desktop/yourproject/build/Release-iphoneos/yourapp.app" -o "/Users/jc/Desktop/yourproject/yourappname_${CHANNELID[$i]}.ipa"
done
 
當然以上程式碼可以優化,例如路徑可以寫成變數
我的新年第一個分享

相關文章