Xcode 8显示错误,即配置文件不包含签名证书。
Xcode-8仅与Xcode 7有关,此问题与显示与已识别证书相关的相同配置文件有关。
Xcode 8显示错误,即配置文件不包含签名证书。
Xcode-8仅与Xcode 7有关,此问题与显示与已识别证书相关的相同配置文件有关。
Answers:
有很多方法可以解决此问题,例如启用自动签名等。但是,如果您想了解此错误的原因,则需要查看错误消息。
它说您在“常规”选项卡中选择的配置文件不包含在“构建设置”->“代码签名身份”中选择的签名证书。
通常,如果在“构建设置”->“代码签名身份”下为调试身份选择了分发证书,则会发生这种情况。
如果在“签名(调试)”下发生这种情况,则可能是预配配置文件中未包含“签名身份”->“ iOS开发”。
检查您的钥匙串,以查找缺少私钥的身份。我为同一团队安装了多个分发证书,其中一个缺少私钥。Xcode仅检查钥匙串中的第一个匹配身份,并自动使用它而不是包含私钥的身份。
删除没有私钥的匹配身份会使Xcode再次检测到正确身份。
对于那些出于某种原因应继续使用非自动的人
打开keyChain Access来查看是否有两个相同的证书,如果有两个或多个,只需删除一个就可以了:)
值得一提的是,每次自动签名都失败,直到我手动删除了以下位置的本地配置文件:〜/ Library / MobileDevice / Provisioning Profiles
在那之后,自动签名完美地工作了,它从苹果的服务器上获得了正确的配置文件。
这仅影响某些构建,特别是那些我手动为watch app创建配置文件的构建。
CMD + Shift + .
按钮显示所有隐藏文件。
对于那些仍在Xcode8中解决此问题的人。对我来说是一个重复的证书问题,这是我解决的方法:
我读了尼克的答案,然后开始调查。我检查了特定情况下的所有密钥和证书(在〜/ Library / Keychains / System.keychain内部)。
打开文件时,我发现我有两个iPhone分发证书(这是Xcode要求我提供的证书),一个带有我自开始就一直使用的iOS分发私钥,另一个带有它的iPhone分发证书。私钥的名称(iOS Distribution:NAME)我不熟悉。我删除了最后一个证书,再次启动Xcode,问题消失了。xCode不能解决该冲突,这就是为什么它始终出现签名证书错误的原因。
检查您的钥匙串,也许您有重复的证书。
如果您使用手动签名(我肯定会鼓励),则可能会发生此错误,因为Xcode认为应该使用开发人员证书对发布版本进行签名,该证书显然不包含在发布设置配置文件中。
有一个构建设置,用于定义应将哪种证书用于哪种构建配置。要更改它,请转到构建设置并搜索“ 代码签名身份”。扩展后,每个构建配置(通常是Debug和Release)应该有单独的行,并在第二栏中显示其选定的身份(通常是iOS Developer或iOS Distribution)。确保为每个构建配置将其设置为正确的标识。
在某些情况下,还可以扩展构建配置。确保其子项也设置为正确的标识。
您也可以使用出色的Fastlane工具包解决代码签名问题。作者付出了巨大的努力来有效地自动化构建,签署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,然后切换到刚刚在命令输出中看到的名称的新创建的配置文件。
本示例用于开发代码签名问题(在设备上运行)。查看叹气文档以了解所有其他选项。
发生了同样的错误。配置文件似乎已更新,添加了新证书,我什至在下载时进行了检查。还吊销了前开发商的证书,不包括在供应资料中。但是Xcode仍然向我询问有关先前证书的错误:
No certificate for team 'MY_TEAM' matching 'iPhone Developer: FORMER_DEVELOPER' found
所以,我做了什么来解决它:
Build Settings
-> Signing
->Code Signing Identity
希望它能帮助到别人。
Xcode 11
这是我得到的错误
供应配置文件“ XXX”不包括签名证书“ Apple Development:XXX(XXX)”。
现在,Xcode 11自动创建了一个证书“ Apple Development:XXX”,该证书对所有平台均有效
你只需要
我也有同样的问题。我换了Mac。当我下载Xcode证书时,收到一条错误消息:“错误是安全配置文件不包含证书签名。”
1)转到https://developer.apple.com/account/ios/profile/limited/edit 选择项目=>编辑=>证书=>全选=>创建=>下载
2)在Xcode中:项目文件=>签名(调试)=>供应配置文件=>导入配置文件=>选择1的文件
我收到了来自Apple的以下电子邮件之一:
尊敬的John Doe,
以下证书已被您的开发团队的成员吊销或已过期:
证书:iOS开发
团队名称:Honey Team,LLC
这不会影响您已提交到App Store的应用程序或您更新应用程序的能力。如果您正在使用包含此证书的配置配置文件,则必须重新创建它们才能重新使用它们。有关详细信息,请参见Xcode帮助中的“应用程序签名概述”部分。
最好的祝福,
Apple开发人员计划支持
我创建了一个新证书,该证书撤销了以前的证书(在本地和任何其他开发人员的Mac上)。为了使其正常工作,我必须下载新的配置文件。
解决方案是:
我个人没有这种访问权限。此访问权限仅对我们团队的管理员可用,因此我没有屏幕截图,也不确定这些步骤是否100%正确。
我还没有看到此消息,但是如果您在重新创建配置文件,删除Provisioning Profiles文件夹中现有的文件,在钥匙串中检查重复项等之后仍然遇到问题,请打开您的目标>构建设置>代码签名,并确保其中的所有内容保持一致。例如,我已将用于调试的代码签名标识更改为分发标识,这显然不起作用,因为开发配置概要文件没有分发证书,并且首先导致了错误。
如果您尝试将应用程序上载到iTunes Connect(您的“供应配置文件”设置为“分发”),请转到“项目设置”->“构建设置”->“代码签名”。确保将所有“调试和发布选项”设置为“分发配置设置配置文件”。
这个问题似乎开始在Xcode 11中发生。
这是为我解决的步骤(对于那些在XCode 9.2中面临相同问题的人):
只需在〜/ Library / MobileDevice / Provisioning Profiles中手动删除本地配置文件。
从开发人员帐户中删除并创建了所有证书和配置文件。
从Xcode中删除了开发人员帐户,然后重新添加了它。
解决了我的问题!:-)
此问题是由于个人资料中证书中的私钥与钥匙串中的私钥不匹配。我通过解决这个
与Xcode版本8中的代码签名问题相同的答案。