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

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


当前回答

如果你使用手动签名(我非常鼓励),这个错误可能会发生,因为Xcode认为它应该用开发人员证书来签署发布版本,而这显然不包括在发布配置文件中。

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

在某些情况下,还可以扩展构建配置。确保它的子项也被设置为正确的标识。

其他回答

Xcode 11

这是我得到的错误

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

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

你只需要

访问https://developer.apple.com 转到配置配置文件 检查是否已选择此证书

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

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

When I opened the file, I found that I had two iPhone Distribution Certificates (that was the certificate that Xcode was requesting me), one with the iOS Distribution private key that I have been using since the beginning, and another iPhone Distribution Certificate which its private Key had a name (iOS Distribution:NAME) that wasn´t familiar for me. I deleted this last certificate, started Xcode again and the problem was gone. xCode wasn´t able to resolve that conflict and that´s why it was giving signing certificate error all the time.

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

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

要找到他们:

打开钥匙串访问 点击左侧菜单类别下的“键” 寻找未绑定证书的iOS Developer:…"密钥 我删除了它们,问题就解决了

图中高亮显示的密钥是一个没有证书的样例私钥。

您还可以使用Fastlane工具包解决代码签名问题。作者投入了大量精力来有效地自动化构建、签名iOS应用程序(等等)。

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

Fastlane安装为Ruby gem:

Gem安装fastlane

然后简单地引用:

快速的叹息——发展

回答两个问题,瞧:

[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,切换到新创建的配置文件,其名称您刚刚在命令回显中看到。

此示例用于开发代码签名问题(在设备上运行)。查看所有其他选项的叹息文档。

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