Xcode 8显示错误,证书不包含签名证书。

283

Xcode 8显示错误,证书不包含签名证书。

这个问题只出现在Xcode-8中,在Xcode 7中,使用同样的配置文件会显示相关的标识证书。


3
您需要进行以下操作之一:a) 使用所需的证书更新您的配置文件;或 b) 安装证书(如果该证书最初未在您的 Mac 上设置,则可能还需要从其他带有私钥的 Mac 迁移证书)。 - pedrouan
4
a) 更新您的配置文件以使用所需的证书。
  • 我已经这样做了,但没有起作用。 b) 安装证书
  • 证书已经安装,并且是在同一台机器上创建的,因此我不需要导出任何密钥之类的东西。 而且正如我所说,在同一台机器上使用Xcode 7没有任何问题。这意味着安装没有任何问题。
- Satish Mavani
请查看这个链接,它很新鲜:https://dev59.com/MFkS5IYBdhLWcg3wp4bO - pedrouan
35个回答

13

您还可以使用强大的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,并切换到新创建的配置文件,其名称刚刚在命令输出中看到。

此示例用于解决开发代码签名问题(在设备上运行)。有关所有其他选项,请查看sigh文档


阅读了“构建设置”部分后,我意识到可以选择使用哪个证书进行分析。谢谢。 - Carlos Linares

12

在我的情况下,我在钥匙串中有两个同名的证书,我删除了其中一个重复的证书,这样问题就解决了。


1
可以确认,在我的情况下也是这个问题。 - atereshkov

5

我曾经撤销的证书中仍留有私钥,虽然证书已被删除但是私钥还在。删除它们解决了问题。

如何查找这些私钥:

  1. 打开密钥串访问应用程序
  2. 在左侧菜单栏的“类别”下选择“密钥”
  3. 查找没有绑定证书的 iOS 开发者: ...” 私钥
  4. 删除它们,问题就消失了

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

突出显示的项目是导致问题的一个私钥,删除它可以解决问题


5
因为我没有看到这个具体的答案:
我的问题是需要手动签名。所以我的错误在于,在“构建设置->代码签名->代码签名身份”中,我已经正确地设置了我的调试(自动签名样式和苹果开发证书)、暂存和发布(手动和苹果分发(adhoc)变量)。
由于我理解上的一些缺陷,我没有正确设置“任何iOS SDK”值。一旦我将其设置为相同的手动苹果分发证书,错误就消失了。
最初,我将其设置为自动值“iOS分发”,因为我认为它会更好地自动处理,因为我不知道它的含义。现在还是不知道。希望能有所帮助。

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

4
  1. 删除没有私钥的开发者证书。
  2. 使用"前往文件夹"命令从机器上删除配置文件(~/Library/MobileDevice/Provisioning Profiles)。
  3. 在项目设置中选择团队后,先勾选再取消“自动管理签名”选项。
  4. 登录苹果开发者账户,选择所有可用的开发者证书编辑配置文件,然后下载并添加到XCODE。
  5. 在项目构建设置中选择配置文件和代码签名身份。

4

Xcode 11

以下是我遇到的错误:

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

现在,Xcode 11会自动创建一张证书“Apple Development: XXX”,该证书适用于所有平台。

https://developer.apple.com/account/resources/certificates/list

你只需要:

  1. 前往 https://developer.apple.com
  2. 进入你的 配置文件
  3. 检查是否选择了此证书

3
我有同样的问题。我更换了Mac。当我下载Xcode证书时,收到一个错误消息:“错误是安全配置文件不包括证书签名。”
1)转到https://developer.apple.com/account/ios/profile/limited/edit 选择项目 => 编辑 => 证书 => 全选 => 创建 => 下载
2)在Xcode中:项目文件 => 签名(调试) => 配置文件 => 导入配置文件 => 选择带有1的文件

3
问题似乎是在 Xcode 11 中开始出现的。
  • 前往 Apple Developer
  • 找到正确的配置文件(provision profile)
  • 在右上角点击编辑(Edit)
  • 在证书(Certificates)中选择(Distribution)选项。(我认为这是苹果引入的一种新选项/证书类型,虽然我找不到任何文档)
  • 可选:删除 (~/Library/MobileDevice/Provisioning Profiles/) 下的所有配置文件
    进入 Xcode -> 首选项(Preferences)-> 帐户(Accounts)-> 下载手动配置文件(Download Manual Profiles)

enter image description here


2
对我来说,以上解决方案都没有起作用。我正在将两台旧的Mac迁移到一台新的Mac上,尝试在Xcode上使发布/调试配置文件工作,而不是让Xcode自动管理它们。
对我而言,解决方案是当我创建了两个新证书时,我 还必须 进入我的预配文件中,在分发和开发下,将新证书添加到预配文件中以便识别它们。完成这些步骤并下载后,Xcode移除了所有错误,一切顺利。
希望这能帮助到某个人!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接