iOS App的分发

Posted

技术标签:

【中文标题】iOS App的分发【英文标题】:Distribution of iOS App 【发布时间】:2012-06-16 09:59:25 【问题描述】:

我想测试我的第一个应用程序(距离应用商店发布不远)是否也可以在生产模式下运行。所以我在 appID 中添加了 Production Push SSL 证书,并在 Urban Airship 中添加了一个新应用程序,这样该应用程序现在就可以使用生产服务器了。 首先,它不起作用,该应用程序仍然尝试使用开发服务器并且无法连接到它们。所以我将代码签名身份更改为分发。然后它连接到生产服务器,我得到一个设备令牌。但 1-2 秒后应用程序崩溃,我收到错误消息: 错误:无法启动'/Users/"MyName"/Library/Developer/Xcode/DerivedData/"AppName"-crdfguzuswjwdkfesxsjpooswbgf/Build/Products/Debug-iphoneos/"AppName".app/"AppName"' - 发送失败qLaunchSuccess 数据包

我需要改变什么?

【问题讨论】:

您的调试器可能已损坏。重启 Xcode 或重启你的手机。如果一切都失败了,请从备份中恢复它。 我已经重新启动了 xcode 和我的 iPhone,并且刚刚在我父亲的那个上进行了测试。但这并没有改变任何东西,所以问题一定出在 xcode 中。在生产模式下测试应用是否需要进行任何设置? 【参考方案1】:

您需要为代码签名创建一个 Ad-Hoc 配置文件,以便在生产模式下测试推送通知。

阅读此答案以了解更多信息: https://***.com/a/6413247/550177

【讨论】:

嗯,现在我做到了,但仍然有这个恼人的崩溃。我有一个分发证书,我使用临时配置创建了一个配置文件,并在编辑方案窗口中选择了临时存档。我错过了什么? 由于 get-task-allow 属性,您无法在使用分发证书时调试您的应用程序。您必须在没有附加调试器的情况下对其进行测试。 developer.apple.com/library/ios/#qa/qa1682/_index.html 但是我该怎么做呢?我可以在授权文件中设置它吗? 是的,您在权利文件中设置了它。但是我不确定在使用分发证书签名时是否可以使它工作。 错误消息:(您的应用程序代码签名权利文件中指定的权利与您的配置文件中指定的权利不匹配。

以上是关于iOS App的分发的主要内容,如果未能解决你的问题,请参考以下文章

为啥分发配置文件过期后,iOS App Store 应用程序仍会启动?

用于临时分发的 iOS 静态库

如何为 App Store 分发重新签署 iOS 应用程序?

不通过App Store实现ios应用分发下载安装

iOS企业版APP分发上线流程和注意事项

iOS:我可以在APP商店中在不同国家分发不同的.ipa文件吗