ChatGPT解决这个技术问题 Extra ChatGPT

Xcode 8 显示配置文件不包含签名证书的错误

Xcode 8 显示配置文件不包含签名证书的错误。

此问题仅适用于 Xcode-8 和 Xcode 7,相同的配置文件显示相关的已识别证书。

您需要 a) 使用所需的证书更新您的配置文件或 b) 安装证书(如果最初未在您的 mac 中设置,您可能还需要使用私钥从其他 mac 迁移它)
a) 使用所需的证书更新您的配置文件。 - 我已经这样做了,但没有工作 b) 安装证书 - 证书已经安装,并且是在同一台机器上创建的,所以我不需要导出任何密钥或其他东西。正如我所说,同一台机器上的 xcode 7 没有任何问题。这意味着安装没有任何问题
检查一下,它很新鲜:stackoverflow.com/questions/39565906/…

E
Eystein Bye

有很多方法可以解决这个问题,比如启用自动签名等。但是如果你想了解这个错误的原因,你需要查看错误消息。

它表示您在“常规选项卡”中选择的配置文件不包含您在“构建设置”->“代码签名身份”中选择的签名证书。

如果在“构建设置”->“代码签名身份”下为调试身份选择了分发证书,通常会发生这种情况。

如果这种情况发生在“签名(调试)”下,也可能是“签名身份”->“iOS 开发”未包含在配置文件中。


你先生是一个合格的黑帮。
哇!这是所问问题的实际答案。想知道为什么它不是公认的答案。谢谢先生 !
每个聪明的开发者都应该是聪明的方式。
这应该被标记为接受的答案,它解释了问题和解决方案,而不是随机的 Xcode 生成。
这就是真正的概念解决问题的方式。 (3)
N
Nick

检查您的钥匙串中是否有缺少私钥的身份。我为同一个团队安装了多个分发证书,其中一个缺少私钥。 Xcode 仅检查钥匙串中的第一个匹配身份并自动使用它,而不是包含私钥的身份。

https://i.stack.imgur.com/lkGGR.png

删除没有私钥的匹配身份使 Xcode 再次检测到正确的身份。


谢谢!正是这里发生的事情
没有为我解决问题。这可能是由多个根本原因引起的问题之一。
我所有的证书都有私钥,所以肯定原因可能不同。
在我的情况下,登录钥匙串中有几个证书(=签名身份),名称相同,但日期不同(请注意,在系统钥匙串中,我只得到一个日期正确的证书)。删除除正确的之外的所有东西就可以了。
与@RAM237 类似,我有多个同名证书,但仍附有私钥。删除除正确的以外的所有内容都有帮助。
S
Satish Mavani

为了解决这个问题,

我只是在项目设置常规选项卡中启用“自动管理签名”,在启用之前我担心它可能会产生一些副作用,但一旦我启用它对我有用。

https://i.stack.imgur.com/3Igsa.png


解决这个问题但得到这个错误,“:0: error: Swift does not support the SDK 'iPhoneSimulator9.3.sdk' Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/ bin/swiftc 失败,退出代码为 1"
您应该尝试重新启动模拟器并删除派生数据。
我试过了,但没有奏效。它基本上是由于 Alamofire 而显示的。我认为 swift 3 与 Alamofire 3.0 不兼容
我确实尝试过,但给我这个错误 * 有冲突的配置设置。 * 为开发自动签名,但手动指定了一个冲突的代码签名身份 iPhone Distribution。在构建设置编辑器中将代码签名标识值设置为“iPhone Developer”,或者在项目编辑器中切换到手动签名。
最糟糕的想法是,通过让 xcode 处理您的证书,您会丢失所有配置。懒惰的混蛋 Xcode 只会生成新证书!
d
d0ye

对于那些由于某种原因应该继续使用不自动的人

打开keyChain Access,看看是否有两个相同的Certifications,如果有两个或多个,只需删除一个即可:)


谢谢好友它的工作。
我在寻找什么类型的证书?
M
Mussa Charles

我最近将 Xcode 更新到 9.3 版后遇到了这个问题问题在于代码签名(调试下)证书设置为分发证书而不是开发证书,因此这阻止了我在我的设备上安装应用程序。

这是我为解决这个问题所做的。

项目 -> 目标 -> 选择您的应用程序 -> 构建设置 -> 代码签名身份 -> 调试 -> 双击“iPhone Distribution”并将其更改为“iPhone Developer”。


这很简单,但为此挣扎了一段时间。谢谢你,先生。
伟大的。它工作完美。为什么这不被接受为正确答案?
L
Loke

我取消选中,然后选中“自动管理签名”选项。那为我修好了。


出现一个对话框,询问我是否要启用自动签名。即使我点击取消,这仍然有效。
@JamesWierzba 一般-> 签名。就像上面 Satish Maven 的回答一样。
最佳答案
此外,只需在不同的配置文件之间翻转即可修复它。您可能还必须根据上一个答案先清理密钥。
的确! @bubibu 目前我最喜欢的 SO 答案。
b
blackjack75

对于值得自动签名的东西,每次都失败了,直到我手动删除了本地配置文件:~/Library/MobileDevice/Provisioning Profiles

之后,自动签名工作完美,它从 Apple 的服务器上获得了正确的配置文件。

这仅影响一些构建,尤其是我为手表应用手动创建配置文件的构建。


对我来说,我没有重复,但在删除并重新下载我的配置文件后,它似乎工作正常。
我尝试了其他所有方法,但在删除现有配置文件并让 Xcode 重新下载它们之前没有任何效果
抱歉,我怎样才能访问这个 ~/Library/MobileDevice/Provisioning Profiles ?我在查找器上搜索,找不到任何“库”文件夹。
@ChenLiYong 那是一个隐藏文件夹。按 CMD + Shift + . 显示所有隐藏文件。
@ChenLiYong 使用 Go 菜单(在 Finder 中)中的“Go to Folder...”并粘贴到“~/Library/MobileDevice/Provisioning Profiles”
M
Mark

如果您使用手动签名(我肯定会鼓励),则可能会出现此错误,因为 Xcode 认为它应该使用开发人员证书签署发布版本,这显然不包含在发布配置文件中。

有一个构建设置定义了哪个证书应该用于哪个构建配置。要更改它,请转到构建设置并搜索代码签名身份。展开后,每个构建配置(通常是 Debug 和 Release)应该有单独的行,第二列是其选择的标识(通常是 iOS Developer 或 iOS Distribution)。确保将其设置为每个构建配置的正确标识。

在某些情况下,还可以扩展构建配置。确保其子项也设置为正确的身份。


完美答案,
谢谢!这正是我所需要的。
Z
Zaporozhchenko Oleksandr

有同样的错误。配置文件似乎更新了,添加了新证书,我什至在下载时检查了它。还撤销了前开发人员的证书,从配置文件中排除。但是 Xcode 仍然向我询问以前的错误证书:

No certificate for team 'MY_TEAM' matching 'iPhone Developer: FORMER_DEVELOPER' found

所以,我做了什么来解决它:

Go Build Settings -> Signing -> Code Signing Identity 找到所有“FORMER_DEVELOPER”证书并选择需要的。

希望它会帮助某人。


这是这里唯一真正的解决方案。
在互联网上找到解决方案 4 小时后,唯一对我有用的解决方案。
这工作得很好。始终检查 - 代码签名身份
T
ThomasW

对于那些仍然在 Xcode8 中遇到这个问题的人。对我来说是一个重复的证书问题,这就是我解决它的方法:

我读了尼克的回答,然后我开始了我的调查。我在我的特定情况下检查了所有密钥和证书(在 ~/Library/Keychains/System.keychain 内)。

当我打开文件时,我发现我有两个 iPhone 分发证书(这是 Xcode 要求我提供的证书),一个是我从一开始就使用的 iOS 分发私钥,另一个是它的 iPhone 分发证书私钥有一个我不熟悉的名称(iOS Distribution:NAME)。我删除了最后一个证书,再次启动 Xcode,问题就消失了。 xCode 无法解决该冲突,这就是它一直给出签名证书错误的原因。

检查你的钥匙串,也许你有一个重复的证书。


正是发生在我身上。
这正是我的问题,我在设置 Fastlane Match 时感到困惑,最终在我的钥匙串中有 3 个重复的钥匙
T
Tomek Cejner

您还可以使用出色的 Fastlane toolkit 解决代码签名问题。作者付出了很多努力来有效地自动化构建、签署 iOS 应用程序(以及更多)。

所以在提到的套件中,有一个工具 sigh 可以神奇地解决任何签名问题,因此得名 :) 这里的好处是,该工具封装了有关常见签名问题的知识,并且可以检测和解决大多数问题。

Fastlane 安装为 Ruby gem:

gem install fastlane

然后简单地调用:

fastlane sigh --development

回答两个问题,瞧:

[11:56:55]: No existing profiles found, that match the certificates you have installed locally! Creating a new provisioning profile for you
[11:57:01]: Creating new provisioning profile for 'com.myapp' with name 'com.myapp Development'
[11:57:06]: Downloading provisioning profile...
[11:57:09]: Successfully downloaded provisioning profile...
[11:57:09]: Installing provisioning profile...

最后,转到 Build Settings -> Signing,然后切换到新创建的配置文件,您刚刚在命令输出中看到了它的名称。

此示例用于开发代码签名问题(在设备上运行)。检查 sigh documentation 以获取所有其他选项。


在阅读了构建设置部分后,我意识到我可以选择分析使用的证书。谢谢。
A
Arshad Shaik

就我而言,在钥匙串中我有两个同名的证书,我删除了其中一个重复的证书,然后它解决了问题。


可以确认,这也是我的问题。
D
Dylan w

我已经撤销了证书中的剩余私钥,证书消失了,但私钥没有。删除它们解决了问题。

要找到它们:

打开钥匙串访问单击左侧菜单类别下的“密钥”查找iOS开发人员:...”没有证书绑定的密钥我删除了它们,问题就消失了

图片中突出显示的密钥是没有证书的示例私钥。

https://i.stack.imgur.com/WfEwy.png


W
Warp

“启用自动签名”然后从下拉菜单中选择一个团队帮助我解决了这个确切的问题。


P
PS_dev

删除没有私钥的开发者证书。使用转到文件夹(~/Library/MobileDevice/Provisioning Profiles)从您的机器中删除配置文件然后首先选中然后取消选中项目设置中的自动管理签名选项并选择团队。在 Apple 开发人员帐户中唱歌并编辑配置文件,选择所有可用的开发人员证书,然后下载并添加到 XCODE。在项目构建设置中选择配置文件和代码签名身份


T
Ted

Xcode 11

这是我得到的错误

配置文件“XXX”不包括签名证书“Apple Development: XXX (XXX)”。```

现在 Xcode 11 自动创建了一个对所有平台都有效的证书“Apple Development: XXX”

https://i.stack.imgur.com/j6L18.png

你只需要

转到 https://developer.apple.com 转到您的配置文件 检查是否选择了此证书


M
Mike.R

这个问题似乎开始在 Xcode 11 中发生。

前往苹果开发者

找到正确的配置文件

按右上角的编辑

在证书中选择(分发)选项。 (我认为这是苹果推出的一种新选项/证书类型,尽管我找不到任何文档)

可选:删除 (~/Library/MobileDevice/Provisioning Profiles/) 中的所有配置文件,转到 Xcode -> Preferences->Accounts->Download Manual Profiles

https://i.stack.imgur.com/lGuCr.png


m
maxwell

我也有同样的问题。我换了mac。当我下载 Xcode 证书时,我收到一条错误消息:“错误是安全配置文件不包含证书签名。”

1)转到https://developer.apple.com/account/ios/profile/limited/edit选择项目=>编辑=>证书=>全选=>创建 =>下载

2)在Xcode中:项目文件=>签名(调试)=>供应配置文件=>导入配置文件=>选择文件1


J
Jim

因为我还没有看到这个具体的答案:

我的问题是我需要手动签名。所以我的错误是在 Build Settings -> Code Signing -> Code Signing Identity

我正确设置了调试(自动签名样式和 Apple 开发证书)、暂存和发布(手动和 Apple 分发 (adHoc) 变体)。

我没有正确设置(由于我理解的一些有缺陷的逻辑)是“ANY IOS SDK”值。一旦我将它设置为相同的手动 Apple 分发证书,错误就消失了。

最初我将它设置为自动值“iOS Distribution”,因为我认为它会更好地自动处理,因为我不知道它的含义。仍然没有。哦,希望它有帮助


J
Jprofficial

对我来说,上述解决方案均无效。我正在从两个旧的 mac 迁移到一个新的 mac,试图让发布/调试配置文件在 Xcode 上工作,而没有 Xcode 自动管理它们。

对我来说,解决方案是当我去创建两个新证书时,我还必须进入我的配置文件,并将新证书(在分发和开发下)添加到配置文件中,以便识别它们。完成此操作并下载后,xcode 删除了所有错误,一切顺利。

希望这对某人有帮助!


C
Community

我收到了一封来自 Apple 的电子邮件:

尊敬的 John Doe, 以下证书已被您的开发团队成员吊销或已过期: 证书:iOS 开发团队名称:Honey Team, LLC 这不会影响您提交到 App Store 的应用程序或您的能力更新您的应用程序。如果您正在使用包含此证书的配置文件,则必须重新创建它们才能重复使用。有关详细信息,请参阅 Xcode 帮助的“应用程序签名概述”部分。最好的问候, Apple 开发者计划支持

我创建了一个新证书,该证书撤销了以前的证书(在本地和任何其他开发人员的 Mac 上)。为了让它工作,我必须下载新的配置文件。

解决方案是:

登录苹果开发者账号

删除/撤销以前以我的名义创建的证书。

将新证书添加到配置文件中。您可以通过到期日期识别较新的

从 Xcode 再次下载它们。 Xcode >> 帐户 >> 下载所有配置文件

重启 Xcode

我个人没有这样的访问权限。此访问权限仅对我们团队的管理员可用,因此我没有屏幕截图,也不确定这些步骤是否 100% 正确。


c
cumanzor

我还没有看到提到这一点,但如果您在重新创建配置文件、删除配置文件文件夹中的现有配置文件、检查钥匙串中的重复项等(所有其他答案 ITT)后仍然遇到问题,请打开您的Target > Build Settings > Code Signing 并确保其中的所有内容看起来一致。例如,我已将调试的代码签名标识更改为分发标识,这显然不起作用,因为开发配置文件没有分发证书并且首先导致错误。


谢谢! - 就我而言,在 Target > Build Settings > Code Signing Identity > Release 下设置为 iOS Developer 而不是 iOS Distribution。
N
Niall Kehoe

如果您尝试将应用上传到 iTunes Connect(您的配置文件设置为分发),请转到项目设置 -> 构建设置 -> 代码签名。确保将所有 Debug 和 Release Options 设置为您的 Distribution Provisioning Provisioning Profile。


S
Shoaib Bagwan

以下是为我解决的步骤(对于那些在 XCode 9.2 中面临同样问题的人):

只需手动删除 ~/Library/MobileDevice/Provisioning Profiles 中的本地配置文件。从开发人员帐户中删除并创建了所有证书和配置文件。从 Xcode 中删除开发人员帐户并重新添加它。

解决了我的问题! :-)


J
Jack Vial

发生这种情况是因为配置文件找不到它所链接的证书的文件。

修理:

通过单击 Apple Developer 仪表板的证书、标识符和配置文件部分中的配置文件上的编辑来检查哪个证书链接到您的配置文件 从仪表板下载证书 双击文件以将其安装在您的钥匙串中 将文件拖到 Xcode要特别确定它是链接的

错误现在应该消失了。


m
marc_s

这可能会帮助你

iOS 分发配置文件

设想:

另一个开发者给了我一个证书。

我简单地安装了这个

错误 :

Xcode 8 显示配置文件不包含签名证书的错误

这不是完全正确的错误。

错误是缺少私钥

首选项 -> 帐户 -> 双击团队

https://i.stack.imgur.com/hihV1.png

调用开发者发送私钥。

并将其安装到您的本地

第二个解决方案

创建一个新的证书。

编辑现有的配置文件

包括新证书

保存并下载


t
tristanl

单击但随后取消“启用自动签名”对我有用,尽管它所做的实际更改是:

ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;

或在 Xcode 中称为 Always Embed Swift Standard Libraries


R
Ruchi

我有同样的问题,原因是一分钱。在构建设置中选择了错误的配置文件和证书。几天前我才这样做。因此,您不需要在 xcode 中启用“自动”。在执行之前检查构建设置中的配置文件。


S
Somya

尝试直接从会员中心下载证书/配置文件,而不是从 Xcode 下载。

当我从会员中心手动下载它们时,它对我有用。


A
Alvin George

我为此挣扎了很多天。

第 1 步:从开发者帐户中删除所有证书、配置文件、appID、密钥等。

第 2 步:重新创建推送通知证书、配置文件、应用程序 ID 等。

第 3 步:从钥匙串中删除所有证书。

第 4 步:从 ~/Library/MobileDevice/Provisioning Profiles 中清除所有配置文件。

第 5 步:仅添加所需的配置文件并进行测试。它工作正常。