ios – xcodebuild如何用命令行签署应用程序?

ios – xcodebuild如何用命令行签署应用程序?,第1张

概述我正在尝试使用命令行导出ipa,我不能用xCode做这个,因为应用程序是为客户端制作的,我不是他的团队成员(我真的希望苹果改变它并使其像xCode5一样工作:/) 无论如何, 我做了更多研究并尝试了这个命令: xcodebuild -exportArchive -archivePath pcdev.xcarchive -exportPath ~/Desktop/playcadeAdHoc.ipa 我正在尝试使用命令行导出ipa,我不能用xCode做这个,因为应用程序是为客户端制作的,我不是他的团队成员(我真的希望苹果改变它并使其像xCode5一样工作:/)

无论如何,
我做了更多研究并尝试了这个命令:

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但是我无法在我的手机上运行它,堆叠在安装状态,我查看了命令的日志,我认为这是导致问题:

Checking original app /usr/bin/codesign –verify -vvvv /var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app
Program /usr/bin/codesign returned 1 : [/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app:
a sealed resource is missing or invalID
file missing: /private/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app/archived-expanded-enTitlements.xcent
]

Codesign check fails :
/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app:
a sealed resource is missing or invalID file missing:
/private/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app/archived-expanded-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"

注意:

>在文件夹中复制存档后运行此命令(桌面)然后将终端位置更改为该文件夹(cddekstop)然后运行命令>另外,不要忘记根据归档构建配置(发布或调试)更改配置文件,您可以将其从方案设置更改为进行调试或发布版本.

总结

以上是内存溢出为你收集整理的ios – xcodebuild如何用命令行签署应用程序?全部内容,希望文章能够帮你解决ios – xcodebuild如何用命令行签署应用程序?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1052220.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存