移动互联网iOS、安卓包的构建方式不一样,安卓gradle,iOS 必须xcodebuild。
iOS构建IPA包需要解锁证书,走过不少弯路。
Adhoc 包需要对应的证书描述文件name匹配
rm -rf *.Adhoc.ipa
LOGIN_KEYCHAIN=~/Library/Keychains/login.keychain-db
# 用户密码
LOGIN_PASSWORD=1
security unlock-keychain -p ${LOGIN_PASSWORD} ${LOGIN_KEYCHAIN}
#clean
xcodebuild clean -workspace xgj.xcworkspace -scheme xgj
#构建
xcodebuild -archivePath xgj.xcarchive -workspace xgj.xcworkspace -sdk iphoneos -scheme xgj -configuration "Release.Adhoc" archive
xcodebuild -archivePath xgj.xcarchive -workspace xgj.xcworkspace -sdk iphoneos -scheme xgj -configuration "Debug.Adhoc" archive
#打包
xcodebuild -exportArchive -exportFormat IPA -archivePath xgj.xcarchive -exportPath xgj-`date '+%Y%m%d-%H%M%S'`.Adhoc.ipa -exportProvisioningProfile "XC Ad Hoc: com.mengying.xgj"
jenkins通过shell脚本构建打包,构建的IPA包可以直接发送到fir,fir上必须Adhoc版本。
xcode 新版本构建脚本
rm -rf *.Adhoc.ipa
LOGIN_KEYCHAIN=~/Library/Keychains/login.keychain-db
# 用户密码
LOGIN_PASSWORD=1
security unlock-keychain -p ${LOGIN_PASSWORD} ${LOGIN_KEYCHAIN}
xcodebuild clean -workspace xgj.xcworkspace -scheme xgj
xcodebuild -archivePath xgj.xcarchive -workspace xgj.xcworkspace -sdk iphoneos -scheme xgj -configuration "Debug" archive
xcodebuild -exportArchive -exportOptionsPlist /Applications/jenkins-2.32.3-0/ExportOptions.plist -archivePath xgj.xcarchive -exportPath xgj-3.1.0.Adhoc.ipa
通过配置构建不同包,参考: