【问题标题】:Xcode 9 automatic signing failingXcode 9 自动签名失败
【发布时间】:2018-08-11 11:16:28
【问题描述】:

我已经成功地为 TestFlight 上传了一个应用程序,但是在存档和上传之后,它给了我这个我无法解释的错误。只是为了确保我取消选中了功能目标选项卡中的所有权利,但这似乎并不重要。

我查看了所有应用程序 ID、证书和配置文件,但没有任何异常。我会查看 Xcode 生成的实际 .plist 文件,但我看不到它在哪里,或者它是否存在。我什至应该在哪里检查以验证发生了什么? Xcode 是一团乱七八糟的东西,所以我什至不相信这不是随机错误(我当然清理了目标只是为了确保)。

自动签名无法解决“...”的问题 目标的权利。切换到手动签名并解决问题 通过从开发人员处下载匹配的配置文件 网站。或者,要继续使用自动签名,请删除 您的权利文件中的这些权利及其相关 您的代码中的功能。然后重建您的存档并重试。

配置配置文件未通过资格配置配置文件与 应用程序标识符权利的权利文件的值。

【问题讨论】:

  • 我放弃了尝试解决此问题并使用了手动签名。 Apple/Xcode 无论如何都是错误的,所以我认为这只是另一个。

标签: xcode code-signing


【解决方案1】:

我在一些旧项目中度过了一段糟糕的时光,我不得不使用手动签名,因为我无法让自动配置工作。然后我发现了以下解决方案,它对我 100% 有效:

  1. 如果您还没有切换到自动配置。

  2. 编辑目标构建设置并搜索 Sign。您应该看到四个 Code Signing Identity 条目,它们都应该是 iOS Developer。 (如果其中一个说 iOS Distribution,那就是死亡之吻。)

  3. 仍在编辑目标构建设置,搜索 Provision。向下滚动到底部,查看是否有明确的额外配置配置文件设置提供配置文件编号。如果是,请删除它。

  1. 编辑目标功能。打开 Game Center 和 iCloud 以及应用内购买。现在再次关闭它们。这将为您提供一个空的权利文件(您可以在项目导航器中确认)。

您现在可以在整个设备中使用自动签名构建、存档和导出到 App Store。

【讨论】:

  • 在过去手动设置发布时,我曾经设置 iOS 分发。现在它有趣的是死亡之吻。它有效,但为什么需要从指定为 iOS 分发切换发布?
  • @AmberK 听起来你在“旧时代”总是做错事。 Debug/Release build 配置区别与develop/deploy provision 区别无关。无论采用何种配置,构建都是开发的一部分。部署是指从档案中导出。
  • 好吧,如果它发布到发行版,它反映了什么变化,如果它不应该是为什么有四种类型。我和我的伙伴们捡到了它,为什么它是错误的。你能提供任何资源来说明不同之处吗?
  • @AmberK Apple 年复一年地制作了 WWDC 视频来解释签名的工作原理。我不会为你重复这一切或做你的研究。他们非常清楚,当您使用 Release 构建归档时,您使用 Development profile。当您从存档导出时,应用会使用部署配置文件重新签名。如果其他任何东西似乎对你有用,你只是幸运。无论如何,这些都与这个问答无关;如果您有任何问题,请以 question 的形式提出,不要在这里捎带 cmets。谢谢。
【解决方案2】:

我在 Xcode 9.4 中遇到过非常相似的问题,唯一的区别是该错误涉及应用程序标识符和钥匙串访问组权利的问题。

我从自动 Xcode 签名切换到手动签名以尝试解决问题。在对此无济于事(而且我认为这无助于解决问题)之后,我最终重新启用了 Xcode 自动签名。这似乎解决了问题。我能够毫无问题地清理、存档和上传。

不是一个特别令人满意的答案,但它对我有用。

【讨论】:

    猜你喜欢
    • 2018-07-14
    • 1970-01-01
    • 2023-01-24
    • 2018-03-08
    • 1970-01-01
    • 2017-08-28
    • 2019-04-02
    • 1970-01-01
    • 2020-07-22
    相关资源
    最近更新 更多