我有一台苹果机,用Xcode 4开发iPhone应用。 我现在有一台新麦金塔电脑,新安装了……一切。

当打开在旧Mac上构建的Xcode项目时,我无法在配置为开发版iPhone的iPhone上运行应用程序。 Xcode 4管理器告诉我在配置文件中“没有找到有效的签名标识”。

我猜这与我之前在旧Mac上生成的.certSigningRequest文件有关(我有该文件的备份),但我必须在新Mac上处理它吗?

另一件奇怪的事情是,我在管理器中看不到我的5个现有配置文件(在苹果配置门户上定义),即使刷新并输入我的配置门户登录名和密码后:


当前回答

你需要从你的旧Mac上复制私钥和证书。在旧Mac上打开Keychain Access,在登录Keychain的Keys类别中查看:密钥应该在那里。您需要导出公钥和私钥,然后复制您的密钥。Pem和你的钥匙。p12安装到新的Mac。

使用Keychain Access导入它们可能会失败,至少在10.6下;你可以使用以下命令:

security import yourkey.p12
security import yourkey.pem

其他回答

我今天也遇到了类似的问题。不幸的是,我的HD死在我身上,所以我不能在接受的答案中做这里提到的迁移。我必须执行以下步骤:

连接到苹果开发者成员中心,然后连接到iOS 临时门户。 吊销我的证书。 通过提供一对新的私钥和公钥来创建一个新的证书。 删除之前的所有配置文件并创建新的配置文件。 下载新的配置文件,并通过拖动将它们安装到Xcode中 他们到Xcode图标在码头。

这篇文章也提到了同样的动作。

看起来你可以把你的证书和配置文件从一台机器转移到另一台机器,所以如果你在设置你的证书和/或配置文件时遇到问题,因为你迁移了你的Dev机器,看看这个:

如何在mac之间传输xcode证书

我对这个错误的2分,即使与导出/导入场景无关:

当添加移动供应证书(即PROV文件)时,不要将文件从Finder拖到Keychain Access。相反,只需双击Finder中的PROV文件,同时保持Keychain Access应用程序在某处运行。

事实上,我曾在Keychain中看到我之前的供应项目(带有黄色灯的那个)被一个新的、具有相同名称和应用ID的绿色项目所取代。HTH

你需要从你的旧Mac上复制私钥和证书。在旧Mac上打开Keychain Access,在登录Keychain的Keys类别中查看:密钥应该在那里。您需要导出公钥和私钥,然后复制您的密钥。Pem和你的钥匙。p12安装到新的Mac。

使用Keychain Access导入它们可能会失败,至少在10.6下;你可以使用以下命令:

security import yourkey.p12
security import yourkey.pem

对我来说,诀窍是发现即使我可以在登录下看到开发人员证书,但它不在我的证书下。修复方法是从旧mac上的keychain中导出证书,然后将其导入到My Certificates/login上的新mac。