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

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

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

编辑:

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


当前回答

在遇到最初发布的相同问题后,我终于在4次不同的尝试后让它工作了。所以这就是发生的事情,我不确定这是否是一个老问题(2009-07-09),但我还是会发布,以防它对你有帮助。对我有用的是……也许对你有用…

重新开始,删除密钥链中旧的私钥、公钥和证书 完成整个过程,从证书颁发机构请求证书,获得一个新的公钥、一个新的私钥和一个新的证书。注意:当它工作时,我只有一个私钥、一个公钥和一个证书 创建一个新的配置文件(使用刚才创建的证书),并将其放在Xcode的管理器窗口中。删除所有旧的废话。 运行它。

希望这能有所帮助。

其他回答

对于开发证书,您只需创建一个新的证书并将其与配置文件匹配即可。但是对于分发,就像你要提交给苹果时,你不能这样做,必须使用团队代理创建的分发证书。问题是您需要计算机上的私钥。这很简单,但是,创建证书的团队代理复制私钥给你,下面是来自Apple的说明,我希望这对你有帮助。

It is critical that you save your private key somewhere safe in the event that you need to develop on multiple computers or decide to reinstall your system OS. Without your private key, you will be unable to sign binaries in Xcode and test your application on any Apple device. When a CSR is generated, the Keychain Access application creates a private key on your login keychain. This private key is tied to your user account and cannot be reproduced if lost due to an OS reinstall. If you plan to do development and testing on multiple systems, you will need to import your private key onto all of the systems you’ll be doing work on.

To export your private key and certificate for safe-keeping and for enabling development on multiple systems, open up the Keychain Access Application and select the ‘Keys’ category. Control-Click on the private key associated with your iPhone Development Certificate and click ‘Export Items’ in the menu. The private key is identified by the iPhone Developer: public certificate that is paired with it. Save your key in the Personal Information Exchange (.p12) file format. You will be prompted to create a password which is used when you attempt to import this key on another computer. You can now transfer this .p12 file between systems. Double-click on the .p12 to install it on a system. You will be prompted for the password you entered in Step 4.

Because I keep coming back to this question, I will leave my answer here for the solution that works for me. It turns out that for a same public/private key developer identifier of me, it's installed twice in my keychain. Both have private key. But when I compare, one is private key of me within my developer organisation, and another one is private key of me as a personal developer. It turns out Xcode keeps trying using the wrong key. Removing the wrong duplicate key solves all the problem. Hey future me, check this one first next time!

以我为例,我把这个项目从我的iMac复制到我的Macbook Pro,然后发现我的Macbook上没有安装我的私钥。所以我导出了我的私钥,复制并安装到Macbook上,瞧,它工作了!我在这里记录了这些信息: http://www.creatistblog.com/2009/09/iphone-developer-provisioning.html

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

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

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