选择哪些档案用于代码签名身份与发布身份签名以及代码签名授权。

4
我已经阅读了苹果的文档、SO上的许多帖子以及各种教程,但必须承认我并不完全理解何时以及如何使用配置文件,通常只能通过试错找到有效组合。然而,目前我遇到了这样一种情况:一个曾经可以通过iTunes安装的临时应用现在无法在我的手机或测试者的手机上安装,尽管使用XCode可以安装。手机上的错误信息只是“ZZZ安装失败”。
我在XCode中安装了以下配置文件: 1)Ad-hoc分发配置文件 2)团队预配配置文件 3)开发配置文件 4)Apple Push配置文件
一些问题: 1)在Target Build Settings的代码签名标识部分应该使用哪个配置文件?为什么?
2)在分发Ad-Hoc时应该使用哪个配置文件?
我认为对于2),应该使用Ad-hoc分发配置文件?如果不是,那么什么时候应该使用?
如果在步骤2)中使用了Ad-Hoc分发配置文件,那么我是否需要在步骤1)中使用Apple Push配置文件?否则,我怎样才能接收APN?
那么什么时候应该使用其他配置文件呢?
几个后续问题: 3)在什么情况下会或应该在项目和目标中设置不同的代码签名标识?
4)默认情况下,代码签名标识有5个部分(代码签名标识、调试、调试任何iOS SDK、发布、发布任何iOS SDK)。通常应该都是相同的吗?在什么情况下会或应该不同?
5)代码签名权限部分用于什么?
我已经从事iOS开发相当长时间,并且在许多领域都可以称得上高手,但这个问题让我感到困惑。
非常感谢如果有人能解开这个谜。
1个回答

2

1) 开发配置文件必须在APNS配置文件之后生成。您不需要使用APNS证书来签署捆绑包,因为它是用于服务器的。但是在您的开发和Ad-hoc配置文件中,将包含有关推送通知的信息,因此您需要在供应门户中更改APNS设置后重新创建dev和ad-hoc配置文件。为了正确使用APNS,您应该阅读其他材料,例如这个或其他任何材料。如果应用程序没有APNS,您也可以使用团队配置文件以您的开发人员名称进行调试。

2) 是的,Ad-hoc。

3) 如果项目中有多个目标

4) 我将开发配置文件用作“Debug”(在“Debug Any iOS SDK”中相同),将ad-Hoc配置文件用作“Release”(在“Release Any iOS SDK”中相同)。

欢迎来到疯狂的应用程序签名世界!


谢谢,不过我已经尝试将代码签名身份更改为开发配置文件,但仍然出现错误。我已经成功使用这组配置文件几周了,所以它们一定能够正常工作。但是我不知道在过去几天里发生了什么事情导致它们停止工作。也许我只需要重新创建一切,这似乎是当所有其他方法都失败时的标准解决方案。 - Gruntcakes
当前的临时配置文件是否已安装在测试设备上?您是通过iTunes还是通过Web发送临时包到设备上的?也许错误不在Xcode签名中(也可能在那里)。此外,作为广泛使用的解决方案,我建议从Xcode中删除所有证书并重新安装它们。有时这个技巧可以帮助解决问题。 - Pavel Oganesyan
我让事情正常运转了 - 我注意到密钥库中有很多密钥,其中一些可能是旧版本配置文件的。我清理了很多东西,然后它开始工作了。为什么上周它能够工作而这周却不能,而我并没有改变任何东西,这是一个谜。 - Gruntcakes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接