这事让我非常担心。我刚刚下载了iPhone 3.0 SDK,但现在我无法让我的配置文件工作。以下是我的尝试:

删除所有配置配置文件 删除登录keychain 创建新的“登录”钥匙链,使它 默认的 创建一个新的证书签名请求 创建新的开发人员和分销渠道 证书在苹果开发者中心 下载并安装它们 下载并安装WWDR证书 创建一个新的配置文件和 双击它来安装

所有的证书报告都是有效的,但是Xcode仍然不能识别它们。接下来我该试试什么?

编辑:

我完全重新安装了Mac OS X,从一个新的安装安装了3.0 SDK,仍然有同样的问题。


当前回答

你需要:

1)私钥和公钥。

你的钥匙链上有这个符号

2)由这些密钥的签名请求生成的证书

3)连接到该证书的配置文件

假设你换了电脑,想重新设置Xcode配置文件。你是怎么做到的?

Open Xcode, press ctrl + O to open the Organizer, and delete all provisioning profiles you might have installed already. Open keychain access, and create a signing request which you save to file (when you create the request, a private and public key is created in your keychain). Create/Update a certificate in the provisioning portal by sending apple this signing request Download and install the newly created certificate. Revoke your provisioning profiles and update them with the new certificate. Download and install the newly updated provisioning profiles.

其他回答

我解出来了。 我不得不把。cer文件拖到KeyChain Access中。但请确保左上角的“Login”已被选中。否则,Xcode将无法看到证书,也就无法为你的代码签名。

苹果在这方面还有改进的空间....

在仔细浏览了这里的主题并检查了人们提出的所有解决方案后,我可以自信地断言,在遵循苹果开发者文档中提到的创建CSR和移动供应文件的步骤后,就这样做吧!,

Xcode发射。 选择窗口- >组织者 点击这个刷新按钮,肮脏的黄色条将立即删除。

http://img.skitch.com/20100820-1ngm8an14c6fm3dt7g6j51d2nx.jpg

相信我,你只需要这么做。没有必要一遍又一遍地重复这个过程来确保你的方法是正确的。只需按下刷新,输入您的登录凭证,就完成了。

确保这种情况干净地发生的一个好方法是首先完全清理您的登录密钥链。

另外,一个非常重要的步骤是在导入私钥和公钥之前解锁您的钥匙链

 security unlock-keychain -p password ~/Library/Keychains/login.keychain 

将私钥导入登录keychain:

security import PrivateKey.p12 -k ~/Library/Keychains/login.keychain 

导入1个身份。

将公钥导入登录keychain:

security import PublicKeyName.pem -k ~/Library/Keychains/login.keychain 

1键导入。

我也遇到过同样的问题。这是因为证书的私钥在您的机器上不存在。

If you are now using a new machine and download the certificate from website: You can export the certificate from the old machine and then import on the new machine. If you share the developer account with someone: You ask the account owner to send you an invitation and become a team member of that account. Then you can create your own certificate from scratch. If you don't want to handle all these sh*t: Just revoke the certificate on website and delete the copy on your local machine. Then request a new one. This should be the ultimate way for solving such issue.

我登录了开发人员帐户并撤销了开发证书。撤销和下载开发证书后,我双击新下载的证书,这一次私钥在开发证书下的KeyChain访问。