Xcode9 命令列打包變化

2021-08-08 20:21:10 字數 1337 閱讀 8836

最近更新了xcode9 原有的自動化打包工具不好用了,會出現如下報錯

具體如下 

根據日誌可以看出是歸檔的時候簽名失敗   

指令碼如下

# export archive

echo "export archive project $ date:$(date +%y/%m/%d/%h:%m:%s)"

xcodebuild -exportarchive -archivepath build/unity-iphone.xcarchive \

-exportoptionsplist $ \

-exportpath build/package

if [ $? -ne 0 ];then

echo "export archive failed."

errorend

fi

經過分析和查閱資料,發現不同之處就是這個$代表的plist檔案,之前直接引用的xcode工程內預設生成的plist檔案。現在的話就需要自己新增乙個plist檔案,並且需要在這個plist檔案中新增provisioning profile資訊

<?xml version="1.0" encoding="utf-8"?>

provisioningprofiles

%provisioning profiles name or uuid%

signingcertificate

%codesign_identity%

signingstyle

manual

teamid

%teamid%

method

development

上面**中的%***%需要替換為自己專案的實際內容,不要%%

%provisioning profiles name or uuid% 這個是provisioning profiles 的名稱或uuid

%codesign_identity% 這個是簽名 可以是名稱或uuid  如:"iphone developer:zhang san(ffffffff)"

%teamid%  這個是10位的teamid

更多xcodebuild 的引數可以在命令列輸入 xcodebuild -help 檢視

下面附上-exportoptionsplist 的描述

參考:

xcode使用命令列打包ipa

打包是利用xcodebuild在終端輸入命令列,最終輸出ipa包 第一步 進入工程目錄配置好證書和bundleid 這個是和你的證書配套的 第二步 用真機測試,確保能夠執行成功,因為真機能過測試成功,那說明打包ipa才是可行的 eg 第四步 在第三步正確的前提下,輸入xcodebuild clean...

Unity 命令列打包

在寫文章之前先說下unity已經自帶了視覺化打包,我為什麼要多此一舉進行命令列打包,估計剛接觸unity的小夥伴都會有這樣的疑惑,當你遊戲要發布到android平台你就會知道,需要接不通平台的sdk,甚至有些平台還需要改包名。而遊戲從接完平台sdk,到發布還需要經過無數次的測試,發布後甚至還需若干次...

Unity命令列打包

補充unity編輯器端獲取打包命令列自定義引數,這個可以獲取到所有打包時的引數 string runargs system.environment.getcommandlineargs 一 在assets editor目錄下放個指令碼 using unityengine using unityedi...