111

我在“归档”我的应用程序时遇到了问题。我认为由于 iPhone 更新到 5.1 和 XCode 更新到 4.2.2,配置文件无效。

我现在花了 4 个多小时来解决认证问题,同时逐步使用此线程 3 次(这会花费大量时间):

获取“在您的钥匙串中找不到与此配置文件匹配的有效签名身份”警告

我仍然有以下错误: XCode 认证错误

没有可用的身份 管理员必须在下载身份之前请求身份。

处理几秒钟后,“下载身份”按钮返回此窗口。

你知道如何摆脱认证文件的困境并解决这个问题吗?

4

13 回答 13

154
  1. 访问会员中心

  2. 转到“iOS 配置门户” -> “证书”(左侧边栏)>> “分发”选项卡

  3. 选中“Provisioning Profiles”字段。如果为空,则下一个 (4)

  4. 转到“配置”(左侧栏)-> “分发”选项卡。按“新配置文件”并完成它。返回 (3) 再次检查该字段。

  5. 下载并“运行”(双击)新的配置文件。

  6. 在项目的构建设置中选择新的配置文件(它可能与旧的同名)

  7. 在您的项目的构建设置中,将您的代码签名身份(全部)更新为新的(如果有的话)。(旧的可能已过期,这是您看到错误消息的最大原因之一)

  8. 验证您的捆绑包 ID 是否正确 (CaSe SeNsEtIvE)

  9. 返回 XCode Organizer - 设备。单击 TEAM(左侧栏),然后单击“刷新”(右下角)。你会发现 XCode 获取新的配置文件。如果加载了新内容,请重复第 6 步和第 7 步(它们将被更改!)

    *如果您因为运行的是较新版本的 xCode 而找不到团队,请转到 Xcode 首选项(单击 Mac 工具栏上的“Xcode”屏幕的左上角)并转到帐户,选择您的团队并单击刷新。如果加载了新内容,请重复步骤 6 和 7(它们将被更改!)

    如果您在Preferences -> Accounts仍然无法刷新,则:

    • 单击“帐户”选项卡
    • 在列表中选择一个 Apple ID
    • 点击右下角的“查看详情”
    • 点击左下角的刷新箭头
    • Xcode 现在将刷新更新的凭据,您可以继续验证或分发您的应用程序。

  10. 再次验证或分发您的应用程序。它应该工作。

  11. 如果这不起作用,请转到项目设置 > 目标下的“团队”并选择“无”...既然您已选择无,您将需要重复第 7 步并更改代码签名身份(所有这些身份)和再次尝试存档。

  12. 最后,如果以上都不起作用。只需创建一个新的生产证书并创建一个具有相同捆绑 ID 的新配置文件。(是的,如果您要更新已经上线的应用程序,这将起作用)。下载证书和证明。配置文件并同时运行(双击)。现在重复步骤 6 并存档。这应该有效。

于 2012-06-27T16:00:44.270 回答
17

@Takoi 的回答是正确的。但是,在我最新版本的 Xcode 中,Organizer 的 Devices 部分中没有 TEAM 选项。我必须执行以下操作来刷新凭据:

  1. 转到 Xcode-> 首选项
  2. 单击“帐户”选项卡
  3. 在列表中选择一个 Apple ID
  4. 点击右下角的“查看详情”
  5. 点击左下角的刷新箭头

Xcode 现在将刷新更新的凭据,您可以继续验证或分发您的应用程序。

希望这可以帮助!

于 2013-12-19T22:29:04.097 回答
4

确保 XCode 中 .plist 文件中的包 ID 与 itunesconnect 中的包 ID 相同,如果它关闭,则在验证/分发时将无法将存档与 itunesconnect 上的配置文件匹配。

于 2013-01-10T14:17:09.587 回答
3

现在这更容易了。

  1. 你去应用程序itunesconnect并登录
  2. 点击“证书”
  3. 配置文件/分发
  4. 生成个人资料,
  5. 下载个人资料
  6. 双击它
于 2014-01-01T21:03:24.537 回答
3

我是 2 个团队的成员,在上传其中一个项目时遇到了同样的问题。在项目设置(XCode 5)中将 General -> Identity -> Team
更改为None允许我将应用程序上传到 iTunesConnect。

截图在这里

于 2014-05-21T15:02:33.490 回答
2

我的证书已过期,导致我的配置文件过期。
有一次,我 -

  • 在 iOS 门户网站上更新了我的证书
  • 单击配置文件上的已编辑
  • 选择新证书并单击生成
  • 在 Xcode 中,我刷新了我的配置文件

错误消失了

于 2014-01-16T14:38:28.847 回答
2

我猜它是写在流中的某个地方,我没有详细阅读。我只想强调这一点:

由于令人讨厌的 xCode 行为,一旦您设置了所有内容,您必须清理项目并退出 xCode

然后重新启动并构建。现在你知道它是否有效。

于 2014-09-13T17:33:12.933 回答
1

看起来您将不得不申请另一个开发人员证书。转到 iOS 开发中心网站并转到配置门户。单击证书选项卡并按照说明进行操作。https://developer.apple.com/ios/manage/certificates/team/howto.action

需要明确的是,您的问题似乎与配置无关,特别是开发人员证书。如果您确实获得了另一个证书,则必须创建所有新配置文件来签署您的应用程序。

于 2012-05-23T03:23:47.227 回答
1

我的包标识符的名称不同。我不得不将它从 Nyquist.GasBro 更改为 com.Nyquist.GasBro,这就是我在配置文件中的内容。

于 2014-01-16T13:38:30.633 回答
1

以前的答案都没有帮助我,所以我发布了我的问题。

  1. 开发中心:证书、标识符和配置文件> 配置文件 > 分发

确保有一个分发配置文件,并且其中的 App ID 与 Xcode 中您的应用程序的 Bundle ID 完全相同(项目设置 > 常规 > 身份 > Bundle Identifier)。

  1. Xcode:项目设置>构建设置>代码签名:
    • 供应配置文件 - 选择分发供应配置文件名称(不是开发!)
    • 代码签名身份 - 我选择了自动,因为我只有一个。

PS 在此之前,我从开发中心和 Xcode 中删除了所有未使用和过期的配置文件和签名身份。然后,如其他答案中所述刷新:Xcode:首选项>帐户>(我的Apple ID)>查看详细信息>刷新。

于 2014-09-13T08:17:14.083 回答
0

您正在寻找的答案是,当您生成 COMMON NAME 的证书请求时,您需要将您的 HUMAN NAME 放在 John Smith 中,而不是您的应用程序名称。Apple 以 2 种不同的方式使用这个术语 Common Name,并且没有告诉您证书上应该有您的名字,而在另一个领域,他们要求提供通用名称并想要 APP 名称。

于 2013-06-08T00:26:21.870 回答
0

我有同样的问题。在我从存档中删除所有内容之前,此页面上没有提到任何内容对我有用。之后那个问题就消失了。

于 2014-02-06T10:37:15.510 回答
0

对于那些说 Ad Hoc Distribution 配置文件在 2014 年将不起作用的人,我必须同意。

在 Build Settings 中找到 Code Signing 设置:对于 Release 选择您的 Store Distribution,然后选择 Menu>Product>Archive。

稍后,在管理器窗口中,选择您的存档并单击验证。它会让您选择 Ad Hoc 配置文件并验证...然后选择分发,它将让您保存为 .ipa 文件。

于 2014-05-07T09:55:32.850 回答