2

我试图将我的应用程序上传到苹果商店,但遇到了一些问题。首先,我使用 iPhone SDK 2.2.1 制作了我的应用程序,然后我升级到了 SDK 3。然后我从钥匙串访问中生成了一个证书,并使用它来生成配置文件。当我将构建 SDK 从模拟器更改为设备时,出现错误“代码签名错误:身份‘iPhone 分发’与默认钥匙串中的任何有效证书/私钥对不匹配”。我对此有一些疑问:我可以在没有设备连接到我的 Mac 的情况下执行这些步骤吗?因为我现在没有可用的设备。我需要对目标构建选项进行哪些更改?出现该错误的可能原因是什么?

非常感谢您的帮助。提前致谢,

莎拉

4

2 回答 2

3

代码签名步骤是出了名的繁琐和错误。确保您已完全按照步骤从 Apple 获取证书和配置文件。然后在“代码签名身份”下检查您的构建设置。

您不需要连接设备,尽管它可以方便地检查一切是否正常。但是我发现有时我需要手动编辑项目文件——你不应该这样做,尤其是使用 3.xSDK,因为它在代码签名方面要好一些。

错误的可能原因是

1) 证书中的名称与项目中设置的名称不匹配。但是 3.0 应该自动匹配“iPhone 发行版”,而不是对精确匹配如此挑剔。

2)您尚未将您从苹果获得的证书添加到钥匙串中

3) 由于 XCode 中的错误,您的项目文件变得混乱并且配置文件设置错误。不应该真的发生,但我发现自己有时会进入项目包内容并在 textedit 中编辑项目文件 - 不是为了胆小的人,如果你尝试这个,你应该做一个备份。

4) 确保您从苹果获得的配置文件已正确安装在 xcode 中(查看管理器窗口)。

5)要检查它是否正常工作,尝试将其安装在设备上确实会有所帮助,尽管这不是绝对必要的。使用应用程序上传器而不是 itunesconnect 网站上传分发文件是另一个很好的检查,如果文件没有正确签名,它应该反对。(虽然说过我在使用应用程序上传器时遇到了问题,有时不得不使用网站上传)。

简短的版本是很有可能你已经做对了所有事情并且只是在 xcode 中遇到了一个错误。即使它似乎奏效了,但它通常没有奏效。整个事情是一团糟。只需尝试重做这些步骤并更改 xcode 中的代码签名身份。还要清除您不使用的所有旧配置文件,以减少 xcode 选择错误配置文件的机会。

于 2009-08-12T00:57:31.733 回答
0

您是否真的将证书和配置文件导入您的钥匙串?如果没有,请从 Apple 下载文件,将它们添加到 Keychain Access 应用程序,然后重试。

于 2009-08-12T00:55:41.483 回答