清理工程
xcodebuild clean -project {xcode_project}/Unity-iPhone.xcodeproj -alltargets
構建工程
xcodebuild archive -project {xcode_project}/Unity-iPhone.xcodeproj -scheme 'Unity-iPhone' -configuration '{build_type}' -archivePath {archive_path} CODE_SIGN_IDENTITY='{CODE_SIGN_IDENTITY}' PROVISIONING_PROFILE{APP}='{PROVISIONING_PROFILE}' DEVELOPMENT_TEAM='{DEVELOPMENT_TEAM}' PRODUCT_BUNDLE_IDENTIFIER={bundle_identifier} CODE_SIGN_STYLE='Manual'
導出包
xcodebuild -exportArchive -archivePath {archive_path} -exportPath {export_path} -exportOptionsPlist {export_Options_plist}
參數:
工程路徑 | 構建類型 | 存檔路徑 | 證書標題 | 證書UUID | 證書名稱 | 導出路徑 | 導出選項 |
---|---|---|---|---|---|---|---|
string | string | string | string | string | string | string | string |
xcode_project | build_type | archive_path | CODE_SIGN_IDENTITY | PROVISIONING_PROFILE | PROVISIONING_PROFILE_SPECIFIER | export_path | export_Options_plist |
CODE_SIGN_IDENTITY: 證書標題
PROVISIONING_PROFILE: 證書的UUID security cms -D -i 簽名文件
PROVISIONING_PROFILE_SPECIFIER: 證書名稱
如果因為需要設置new building system而失敗填物,請參考
Unity 在使用xcodebuild構建ipa時旁趟,因為需要設置new building system而失敗
-
Unity2019使用xcodebuild構建出現的問題
Step 1 : 需要將UnityFramework
中的Info.plist
中的CFBundleIdentifier
設置為$(PRODUCT_BUNDLE_IDENTIFIER_XXX)
只要不等于$(PRODUCT_BUNDLE_IDENTIFIER)
Step 2 : 將命令行中PROVISIONING_PROFILE[_APP]
使用_APP
來指定Unity-iPhone
[Unity2017中]
Step 1 不需要管
Step 2 : 不需要加_APP
- 在M1囤官、M2芯片下茂契,使用Xcodebuild Archive出現錯誤
錯誤信息:Provisioning profile "XXX" doesn't include the currently selected device "X'Mac"
解決方法: 在Archive命令中追加-destination 'generic/platform=iOS'