我的xcode版本比較高,查找的一些低版本的構建都不可用,所以在此記錄我的打包過程。
1.app代碼倉需要發布的ipa的打包:采用achieve的方式
(1)前期工作
mkdir arch
archive_path=arch/${app_name}.xcarchive
# xcodebuild archive -workspace ${workspace_name}.xcworkspace -scheme ${app_name} -configuration $ios_type clean build
(2)清理 (其中scheme和workspace就不細說了,如果不清楚的話,ios的開發都知道,ios_type包含Debug和Release)
xcodebuild clean -workspace ${workspace_name}.xcworkspace -scheme ${app_name} -configuration $ios_type
(3)打包成app(其中achieve路徑自己定義)
xcodebuild archive -workspace ${workspace_name}.xcworkspace -scheme ${app_name} -archivePath $archive_path -configuration $ios_type
(4)導出ipa (其中的plist文件按照自己的路徑填寫)
echo export ipa ....
xcodebuild -exportArchive -archivePath $archive_path -exportPath arch/target_ipa -exportOptionsPlist ${app_name}/${app_name}/Info.plist
2.sdk代碼倉,需要打對應ipa測試:
(1)清理
xcodebuild clean -project ${project_name}.xcodeproj -scheme ${app_name} -configuration Release
(2)打包成app
xcodebuild build -project ${project_name}.xcodeproj -scheme ${app_name} -configuration Release
(3)將app放到Payload文件夾中,並壓縮文件夾為zip后綴,然后修改為ipa后綴
mv Build/ProductsRelease-iphoneos/"$app_name".app Payload/
zip -q -r "$ios_app_name".zip Payload
cp "$ios_app_name".zip target/"$ios_app_name".ipa
這個ipa就可以發給測試測了。
xcodebuild 的其他簡單用法:
(1)xcodebuild -list #顯示scheme
(2)xcodebuild -showsdks #顯示系統和模擬器得sdk版本
參考資料:
https://www.jianshu.com/p/36d2c6d65aa7
http://lijingcheng.github.io/blog/2016/12/05/tong-guo-xcodebuildda-bao-ipabing-shang-chuan-pu-gong-ying/