Xcode - iPhone - 配置文件与默认密钥链中没有任何有效的证书/私钥配对不匹配

50

我尝试将我的iPhone添加到Xcode4中,以便在其上测试我的应用程序。我在苹果开发者中心添加了该设备并下载了预配文件。我们每个月支付99美元的费用来使用这个帐户,并且我不是唯一使用该帐户的人。所以已经有一个“旧”的证书存在,我试图将其添加到我的钥匙链管理器中。但是我看到它上面有一个红色文字(从德语翻译而来):“此证书已由未知实例签名。”

在我的XCode-设备管理器中,在预配部分还出现了一个错误:“XCode找不到您钥匙链中此配置文件对应的有效私钥/证书对。”

我真的不明白我现在该怎么做。这些密钥可能确实不存在于我的钥匙链中,我找不到它们。那么我现在该如何创建它们,如果Apple Dev-Center中已经有一个证书,我又该如何使用它们呢?


我发现这个链接对我非常有用。请跟随此链接,按照描述的步骤创建临时配置文件和证书:http://mobiforge.com/developing/story/deploying-iphone-apps-real-devices - Ajay Sharma
这里是我的救星。这些证书让我抓狂了。https://dev59.com/DHE85IYBdhLWcg3wkkY8(来自Simon Alexander的更长解释) - Mike Anson
6个回答

46

在苹果的配置文件网站上生成证书,首先您需要在Mac上生成密钥,然后上传公钥。苹果将使用此密钥生成您的证书。当您下载您的证书时,为了能够使用它们,您需要拥有私钥。

“XCode无法在您的钥匙串中找到有效的私钥/证书对”这个错误意味着您没有私钥。

可能是因为您的Mac已重新安装,也可能是因为此密钥是在另一台Mac上生成的。因此,为了能够使用您的证书,您需要找到此密钥并将其安装到钥匙串中。

如果您找不到它,您可以生成新密钥,在配置文件网站上重新开始此过程,并获取您能够使用的新证书。


4
另一位开发者可能会将私钥导出并复制到您的设备上。或者,正如在此建议的那样,您可以生成自己的开发私钥、证书和预配文件。 - koregan
嗯,我创建了自己的配置文件并添加了设备。但是我不知道如何创建私钥,以便证书可以接受它。 - Kevin Glier
1
我该如何生成我的公钥和私钥? - Mr_Nizzle
15
这里有详细的说明:https://developer.apple.com/ios/manage/distribution/index.action - Ludovic Landry

1
我的问题是我的目标配置文件没有选择正确的代码签名选项:
目标菜单 -> 代码签名 -> 代码签名身份
选择“iPhone开发人员”,然后选择您创建的临时配置文件。

0
当我尝试在代码签名身份中选择开发配置文件时,它会显示“配置文件与任何有效证书不匹配”。因此,当我按照以下两个步骤进行操作时,它起作用了:
1)在“代码签名身份”下,将开发更改为“不进行代码签名”。
2)然后,在“代码签名身份”下,您将能够选择您的开发配置文件。
这让我抓狂了,但我偶然发现了解决方案。

0
如果您尝试运行的设备上有一些旧版本的配置文件,指向旧的、过期或已撤销的证书或没有关联私钥的证书,那么这也可能会发生。在Xcode组织器中,在设备部分下删除任何无效的配置文件。

0

我遇到了一个类似的情况:多个开发者使用相同的私钥,但是在升级到Lion之后,我发现自己的私钥找不到了。非常简单的解决办法是从其他机器导出特定证书(例如我的开发证书)的私钥,然后将其移动到我的电脑,并拖放到密钥链中。Xcode立即识别并开始正常运行。


0

你的苹果开发者证书可能已过期,或者你的系统日期大于你的账户到期日期。


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