簡體   English   中英

xcodebuild如何用命令行簽署應用程序?

[英]xcodebuild how to sign app with command line?

我正在嘗試使用命令行導出ipa,我無法在Xcode中執行此操作,因為該應用程序是為客戶端而制作的,我不是他的團隊成員(我真的希望Apple改變它並讓它像Xcode 5:/)

無論如何,我做了更多研究並嘗試了這個命令:

xcodebuild -exportArchive -archivePath pcdev.xcarchive -exportPath ~/Desktop/playcadeAdHoc.ipa -exportFormat ipa -PROVISIONING_PROFILE= xxxxxxx-8a61-4264-8fe9-0513bd7935e6 -CODE_SIGN_IDENTITY=iPhone Developer:xxxxx

它確實輸出了.ipa,但我無法在手機上運行它; 我陷入了安裝狀態。 我查看了命令的日志,我認為這個導致了問題:

檢查原始應用

  • / usr / bin / codesign --verify -vvvv /var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app程序/ usr / bin / codesign返回1:[ /var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app:缺少密封資源或缺少無效文件:/ private / var / folders / ks / gxlbsszj7t58y5n6z8d1hpcm0000gn / T / 7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4 / games.app / archived-expanded-entitlements.xcent]

協同設置檢查失敗:/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app:缺少密封資源或缺少無效文件:/ private / var / folders / KS / gxlbsszj7t58y5n6z8d1hpcm0000gn / T / 7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4 / games.app /存檔膨脹-entitlements.xcent

我確信我使用了正確的配置和代碼簽名名稱,同樣在Xcode中我將方案歸檔設置更改為調試而不是發布,以便使用adhoc和開發標識。

我使用Apple工具的經驗非常有限,請盡量解釋解決方案。

編輯:我也試過這個方法它沒有給我任何錯誤,但仍然應用程序堆疊在“安裝...”:

xcrun -sdk iphoneos PackageApplication ~/Desktop/finalX.xcarchive/Products/Applications/games.app -o ~/Desktop/playcadetest.ipa --sign "iPhone Developer: Name Name (xxxxxxxx)" --embed ~/Desktop/p/adhoc.mobileprovision

謝謝

事實證明我使用了錯誤的命令; 特別是這部分是錯誤的:

-PROVISIONING_PROFILE= xxxxxxx-8a61-4264-8fe9-0513bd7935e6 
-CODE_SIGN_IDENTITY=iPhone Developer:xxxxx

正確的是這個:

-exportProvisioningProfile "Provisioning profile full name "

供應配置文件全名與Xcode中顯示的名稱相同,而不是UDID(我不知道為什么很多人建議),也沒有必要指定簽名標識。

無論如何,這是現在正在為我工​​作的完整命令行:

xcodebuild -exportArchive -archivePath myArchive.xcarchive -exportPath myApp.ipa -exportFormat ipa -exportProvisioningProfile "Provisioning profile full name"

注意:

  • 我在將文件復制到文件夾(桌面)然后將終端位置更改為該文件夾( cd desktop )然后運行命令后運行此命令
  • 另外,不要忘記根據歸檔構建配置(發布或調試)更改配置文件,您可以將其從方案設置更改為進行調試或發布版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM