209

我有一台 Macintosh,我曾经使用 Xcode 4 开发 iPhone 应用程序。我现在有一台新的 Macintosh,安装了……一切。

打开在旧 Mac 上构建的 Xcode 项目时,我无法在配置为开发 iPhone 的 iPhone 上运行该应用程序。
Xcode 4 组织者在我的配置文件中告诉我“未找到有效的签名身份”。

我想这与我之前在旧 Mac 上生成的 .certSigningRequest 文件有关(我有该文件的备份),但是在新 Mac 上我有什么用呢?

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

组织者设备截图

4

16 回答 16

221

使用 Xcode 4.2 及更高版本,包括 Xcode 4.6,有一种更好的方法可以将整个开发人员配置文件迁移到新机器上。在您现有的机器上,启动 Xcode 并执行以下操作:

  1. 打开管理器(Shift-Command-2)。
  2. 选择设备选项卡。
  3. 选择LIBRARY下左上角的Developer Profile,它可能位于标题库下或名为TEAMS的标题下。
  4. 选择窗口左下方附近的导出。Xcode 要求您选择文件名和密码。

编辑 Xcode 4.4:

对于 Xcode 4.4,在第 3 步选择 LIBRARY 下的 Provisioning Profiles。然后使用鼠标或 Command-A 选择您的配置文件。

此外,Apple 正在改进他们管理 Xcode 这方面的方式,一些用户报告说右下角的刷新按钮可以解决问题。因此,请先尝试单击“刷新”,如果没有帮助,请执行导出/导入序列。

WP 添加的 Xcode 4.6 的图片

输入密码以保护开发者资料的屏幕截图

编辑 Xcode 5.0 或更新版本:

  1. 打开 Xcode -> 首选项 ('Command' + ',')
  2. 从列表中选择Apple ID 。
  3. 单击窗口左下角附近的 SETTING 图标,然后选择 EXPORT ACCOUNTS... Xcode 要求您选择文件名和密码。

在您的新机器上,启动 Xcode 并导入您在上面导出的配置文件。奇迹般有效。

Ankur 添加的 Xcode 5.0 图片

对于 Xcode 5 或更新版本

于 2011-12-14T18:12:26.837 回答
60

我今天刚遇到类似的问题。不幸的是,我的 HD 死在了我身上,所以我无法在接受的答案中进行此处提到的迁移。我必须执行以下步骤:

  1. 连接到 Apple Developer 会员中心,然后连接到 iOS 临时门户。
  2. 吊销我的证书。
  3. 通过提供一对新的私钥和公钥来创建新证书。
  4. 删除所有以前的配置文件并创建新的。
  5. 下载新的配置文件并将它们安装到 Xcode 中,只需将它们拖到 Dock 中的 Xcode 图标即可。

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

于 2012-08-10T17:36:27.867 回答
17

确保您的证书在“登录”钥匙串中。如果您没有看到登录钥匙串,请突出显示它,搜索它。然后将证书拖到“登录”字样上。关闭并重新打开 Xcode,ta-da。

于 2011-10-22T08:16:54.427 回答
9

您需要从旧 Mac 复制私钥和证书。在旧 Mac 上打开 Keychain Access 并查看登录钥匙串的 Keys 类别:钥匙应该在那里。您需要导出公钥和私钥,然后复制yourkey.pem并复制yourkey.p12到新的 Mac。

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

security import yourkey.p12
security import yourkey.pem
于 2011-07-21T00:15:03.237 回答
9

对于错误

未找到有效的签名身份

请参阅 Apple 已发布的解决此问题的步骤。

关于 iOS 门户上的“5 个现有配置文件”问题,这些问题在 Xcode 4.x Organizer > Devices 选项卡 > Library 下的 Provisioning Profile 部分中的本地库中缺失。

我建议您按照指导您恢复丢失的配置文件的步骤进行操作,并涵盖 Xcode 错误的情况,其中 Xcode 4.1-4.2.1 错误地从您的本地库配置文件中删除,这些配置文件在 iOS 门户上是“活动的”。

于 2012-01-04T01:07:42.883 回答
7

您必须访问您的开发者站点,访问您的证书,然后为您当前的 MAC生成一个新的,并将其添加到您的钥匙串中。

然后您将需要再次添加配置文件。它现在应该可以工作了。基本上,您需要执行与第一次获得开发证书时相同的步骤。

于 2011-07-21T00:15:20.647 回答
7

我有同样的错误,但问题略有不同。我们有一个开发人员团队,但我们都使用相同的 Apple ID(开发人员帐户),所以当我生成配置文件时,我一直收到与主题问题相同的错误。然后,虽然我已经下载了证书(作为开发配置助手步骤的一部分得到提示),但我仍然收到该错误。然后我发现问题是我们的 Apple Developer 帐户正在使用在我的同事机器上生成的证书,所以我需要撤销它,并生成一个新证书,然后创建配置文件。

总结,吸取的教训是,用于您的配置文件的证书必须在将使用配置文件的同一台计算机上生成。当您的开发团队共享同一个 Apple ID 时,这一点尤其重要。
希望它可以帮助某人

于 2013-01-15T04:44:06.700 回答
6

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

添加移动配置证书(即PROV文件)时,请勿将文件从 Finder 拖到 Keychain Access。相反,只需在 Finder 中双击 PROV 文件,同时保持钥匙串访问应用程序在某处运行。

实际上,我已经看到我以前在 Keychain 中的配置项(带有黄灯的项)被替换为具有相同名称和应用程序 ID 的新的绿色项。高温高压

于 2012-05-22T20:05:23.943 回答
5

今天早上我刚打开一个带有不同证书的旧应用程序并允许它访问钥匙串时遇到了这个问题。我的另一个运行良好的应用程序停止处理此错误。直到现在我一直在拔头发,当我这样做时:

Xcode 菜单 > 首选项 > 帐户 > THE_APPLE_ID_THAT_YOU_ARE_USING > 查看详细信息

Signing identities在新窗口中,按下左下角的+按钮并选择iOS Development。它将重新添加身份,之后我的问题现在得到解决,应用程序再次在设备上运行。

在此处输入图像描述

于 2013-11-02T19:46:01.500 回答
4

我的 MAC 操作系统最近崩溃了。我重新安装了 macOS 10.7.4 和 Xcode 4.5。但是所有配置文件都在organizer.

Valid Signing identity not found

我挣扎了几天寻求帮助。后来我意识到,如果您从一个系统迁移到另一个系统(或格式化您的系统),您需要将您的私钥从旧系统的钥匙串导出到新系统(或安装的新操作系统)。

还可以在管理器中导出您的开发人员资料/团队开发人员资料。

Organizer > Teams > Developer Profile > Export

希望能帮助到你。

于 2012-09-27T07:55:14.160 回答
3

我和 Tiguero 发生了同样的事情(感谢您的回答,它给了我希望),但这是一种无需删除所有配置文件即可消除“未找到有效签名身份”错误的方法。

如果您在一个新系统上并且无法从另一个系统检索您的密钥,您确实必须删除并重新生成 Xcode 的新开发和分发证书。您可以通过 Xcode 或使用 Keychain Access 的老式方式来执行此操作。

然后,您可以进入Provisioning,在每个选项卡中,单击 ,然后单击Development要更新的配置文件旁边的,然后单击。DistributionEditModify

您将看到一个证书列表,您必须选中刚刚创建的证书旁边的框,然后Submit

完成此操作后,进入您收到错误消息的 Xcode(我使用的是 4.3.3) Organizer > Devices > Library > Provisioning Profiles,然后单击Refresh。一旦您回答输入开发人员登录名的提示,Organizer将重新下载配置文件,并且错误消息应该会消失。

于 2012-10-10T03:43:16.227 回答
2

我或多或少地解决了“找不到有效的签名身份”错误:

  1. 确保您的 iOS 开发人员程序中的证书也列在您的钥匙串访问权限中并且有效(比较发行日期)。如果不是,请使用苹果参考中的说明从您的旧 Mac 传输它,或者从网站和您的钥匙串访问中删除它,然后重新创建它,重新下载并将其拖到 Xcode 上。
  2. 删除任何现有的开发或分发配置文件并根据您的新证书重新创建它们,重新下载它们并从钥匙串访问验证一切都是有效的。
于 2012-01-27T12:00:41.920 回答
0

您似乎可以将您的证书和配置文件从一台机器转移到另一台机器上,所以如果您因为迁移了开发机器而在设置证书和/或配置文件时遇到问题,请查看以下内容:

如何在 mac 之间传输 xcode 证书

于 2013-03-11T22:53:22.340 回答
0

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

于 2013-08-27T23:35:04.557 回答
0

还没有人提到这一点,这可能不是一个常见的问题,但我在 Xcode 5 中遇到了类似的问题:确保在 Mac 的 Keychain Access 中选择了默认的钥匙串。我尝试全新安装 Mountain Lion 并删除了一个钥匙串,这恰好是默认设置。在将另一个钥匙串设置为默认值后(右键单击钥匙串并选择 Make Keychain "Keychain_name" default"),Xcode 能够设置有效的签名身份。

于 2013-10-12T14:09:23.513 回答
0

我遇到了这个问题,因为与配置文件关联的 iOS 开发证书不在我的钥匙串中。我已经重新安装了 OSX,这就是结果。我做了以下事情:

  • developer.apple.com 在 Certificates, Identifiers & Profiles 下
  • 选择相应(且有效)的 iOS 开发证书,下载
  • 双击下载的文件,它被添加到钥匙串
  • 组织者中的错误消失了

如果您没有有效的证书,请生成一个新证书并使用它创建一个新的配置文件。

于 2014-07-30T14:52:52.727 回答