Xcode 8显示配置文件不包含签名证书的错误。
此问题仅适用于Xcode-8,Xcode 7,相同的配置文件显示相关的已识别证书。
有很多方法可以解决此问题,例如启用自动签名等。但是,如果您想了解此错误的原因,则需要查看错误消息。
它表示您在“常规”选项卡中选择的配置文件不包含您在“构建设置” - >“代码签名标识”中选择的签名证书。
如果在“构建设置” - >“代码签名标识”下为调试标识选择了分发证书,通常会发生这种情况。
如果在“签名(调试)”下发生这种情况,则可能是“签名身份” - >“iOS开发”未包含在配置文件中。
您也可以使用伟大的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的所有其他选项。
在我的情况下,在钥匙串我有两个同名的证书,我删除了一个重复的证书,然后它解决了问题。
有同样的错误。配置文件似乎更新,添加了新证书,我甚至在下载时检查了它。同时撤销了前开发人员的证书,不包括在配置文件中。但Xcode仍然问我以前的证书有错误:
No certificate for team 'MY_TEAM' matching 'iPhone Developer: FORMER_DEVELOPER' found
那么,我做了什么来解决它:
Build Settings
- > Signing
- > Code Signing Identity
希望它会对某人有所帮助。
“启用自动签名”,然后从下拉菜单中选择一个团队帮助我解决了这个问题。
对我来说,上述解决方案都没有奏效。我正在从两个较旧的mac迁移到一个新的mac,试图让Xcode上的发布/调试配置文件无需Xcode自动管理它们。
我的解决方案是,当我去创建两个新证书时,我还必须进入我的配置文件,并在配置文件中添加(在分发和开发下)新证书,以便识别它们。执行此操作并下载后,xcode删除了所有错误,这很好。
希望这有助于某人!
我收到了Apple发来的一封电子邮件:
亲爱的John Doe,
以下证书已被开发团队成员撤销或已过期:
证书:iOS开发
球队名称:Honey Team,LLC
这不会影响您已提交到App Store的应用或您更新应用的能力。如果您正在使用包含此证书的配置文件,则必须重新创建它们才能重复使用。有关详细信息,请参阅Xcode帮助的“应用程序签名概述”部分。
最好的祝福,
Apple开发者计划支持
我创建了一个新证书,该证书撤销了以前的证书(本地和任何其他开发人员的mac)。要使它工作,我必须下载新的配置文件。
解决方案是:
我个人没有这样的访问权限。此访问仅适用于我们团队的管理员,因此我没有屏幕截图,也没有确定这些步骤是否100%正确。
我还没有看到这提到但是如果您在重新创建配置文件后仍然遇到问题,请删除您在Provision Profiles文件夹中的现有配置文件,检查钥匙串中的欺骗行为等(所有其他答案ITT),打开您的目标>构建设置>代码签名,并确保一切看起来一致。例如,我已将调试的代码签名标识更改为分发标识,这显然不起作用,因为开发调配配置文件没有分发证书并且首先导致错误。
如果您尝试将应用程序上传到iTunes Connect(您的配置文件设置为分发),请转到项目设置 - >构建设置 - >代码签名。确保将所有调试和发布选项都设置为Distribution Provisioning Provisioning Profile。
我也有同样的问题。我改变了mac。当我下载Xcode证书时,您会收到一条错误消息:“错误是安全配置文件不包含证书签名。”
1)转到https://developer.apple.com/account/ios/profile/limited/edit选择项目=> edit => Certificates => Select All => Create => Download
2)在Xcode:Project file => Signing(Debug)=> Provisioning profile => Import profile =>选择文件1
以下是为我解决的步骤(对于那些在XCode 9.2中遇到同样问题的人):
解决了我的问题! :-)
点击但随后取消“启用自动签名”对我有用,虽然它的实际更改是:
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
或者在Xcode中,它被称为Always Embed Swift Standard Libraries
我有同样的问题,理由是便士。在构建设置中选择了错误的配置文件和证书。我只在几天之前做过这件事。因此,您不需要在xcode中启用“自动”。在执行之前检查构建设置中的配置文件。
尝试直接从成员中心下载证书/配置文件,而不是从Xcode进行。
当我从会员中心手动下载它时,它对我有用。
多年来我一直在努力奋斗。
步骤1:从开发者帐户中删除每个证书,配置文件,appID,密钥等。
第2步:重新创建推送通知证书,配置文件,应用程序ID等。
第3步:从钥匙串中删除所有证书。
步骤4:清除〜/ Library / MobileDevice / Provisioning Profiles中的所有配置文件。
步骤5:仅添加所需的配置文件并进行测试。它工作正常。
这意味着您需要执行以下任一操作:
当您无法从创建者那里获得证书和.p12文件时,#2的解决方案就是检查“自动管理签名”选项。
发生这种情况是因为配置文件无法找到与其链接的证书的文件。
修理:
错误现在应该消失了。
此问题是由于您的个人资料中的证书中的私钥与您的钥匙串中的私钥不匹配。我解决了这个问题
Xcode 11
这是我得到的错误
供应配置文件“XXX”不包括签名证书“Apple Development:XXX(XXX)”。```
现在,Xcode 11自动创建了一个对所有平台都有效的证书“Apple Development:XXX”
你只需要
在我的情况下,问题是在Xcode Beta 11.5上对签名应用程序的方式有所改变,所以只需确保调试/发布配置证书都正确设置
对于那些由于某种原因应该继续使用不是auotamatic的人
打开keyChain Access查看是否有两个相同的认证,如果有两个或更多,只需删除一个,它将工作:)
我在最近将Xcode更新到版本9.3之后遇到了这个问题。问题出在代码签名(在调试下)证书设置为分发证书而不是开发证书,因此这阻止了我在我的设备上安装应用程序。
以下是我为解决此问题所做的工作。
项目 - >目标 - >选择您的应用程序 - >构建设置 - >代码签名身份 - >调试 - >双击“iPhone分发”并将其更改为“iPhone Developer”。
我取消选中,然后选中“自动管理签名”选项。这为我解决了这个问题。
为什么值得自动签名失败,直到我只是手动删除本地配置文件:〜/ Library / MobileDevice / Provisioning Profiles
在此之后,自动签名工作得很好,并且从Apple的服务器获得了正确的配置文件。
这只影响了一些构建,特别是我为手表应用程序手动创建了配置文件的构建。
对于那些仍然在Xcode8中解决这个问题的人。对我来说是一个重复的证书问题,这是我解决它的方式:
我读了尼克的答案,然后我开始调查了。我在特定情况下检查了所有密钥和证书(在〜/ Library / Keychains / System.keychain内)。
当我打开文件时,我发现我有两个iPhone发行证书(这是Xcode要求我的证书),一个是我从一开始就使用的iOS发布私钥,另一个是iPhone发行证书。 private Key有一个名字(iOS Distribution:NAME),对我来说并不熟悉。我删除了最后一个证书,再次启动Xcode,问题就消失了。 xCode无法解决该冲突,这就是它一直给出签名证书错误的原因。
检查你的钥匙串,也许你有一个重复的证书。
如果您使用手动签名(我肯定会鼓励),可能会发生此错误,因为Xcode认为它应该使用开发人员证书签署版本构建,这显然不包含在版本配置文件中。
有一个构建设置,用于定义哪个构建配置应使用哪个证书。要更改它,请转到构建设置并搜索代码签名标识。展开时,每个构建配置(通常是Debug和Release)应该有单独的行,在第二列中应该有所选的标识(通常是iOS Developer或iOS Distribution)。确保为每个构建配置设置正确的标识。
在某些情况下,还可以扩展构建配置。确保其子项目也设置为正确的标识。