供应配置文件不包括签名证书(Xcode 9.3)

时间:2018-04-04 05:12:38

标签: xcode provisioning-profile ios-provisioning

升级到macOS 10.13.4和Xcode 9.3之后,我的项目现在使我的所有Provisioning Profile都不合格!他们在升级前工作。

分发配置文件的错误消息是:

配置文件“分发配置文件名称”不包括签名证书“​​开发证书名称”

所以我搜索论坛,

  • 删除钥匙串“我的证书”中的所有项目
  • 重新下载分发配置文件 (双击安装到Xcode)
  • 创建新的分发配置文件(双击以安装到Xcode)
  • 重新创建生产证书(双击以安装到钥匙串)
  • 重新下载开发证书(双击以安装到Keychain)

所以现在我的钥匙串有两个生产证书(一个是新创建的)和一个开发证书,错误仍然存​​在。我发现它在分发配置文件中要求开发证书时发现它很奇怪? (我认为这是一个线索,但我不知道为什么以及该做什么。)

所以现在该怎么办?请帮忙!

12 个答案:

答案 0 :(得分:10)

我通过进入构建设置临时解决了这个问题,并手动设置了代码签名身份(旧方法)。 “自动管理签名”不再正常工作,但至少它可以正常工作。

答案 1 :(得分:6)

我为您提供了两种选择:

1)打开KeyChain,找到错误消息中显示的签名证书,然后将其删除。

2)您在“构建设置”->“签名”中指定了签名证书,因此转到“构建设置”->“签名”,然后单击“代码签名身份”。不要选择“自动”(iOS Developer或iOS Distribution),请在“钥匙串中的身份”中选择有效的并与“配置文件”关联的签名证书之一。

答案 2 :(得分:3)

"自动管理签名"不适用于Xcode 9.3。 应在“构建设置”中手动选择代码签名标识。

答案 3 :(得分:2)

查看截图它说明了一切......

目标>>构建设置>>(搜索)产品包标识符>>这对我来说是错的:(

Targets>>Build settings>>(search)Product bundle identifier>>

答案 4 :(得分:2)

对于XCode 11和更高版本,请确保更新通过“供Xcode 11或更高版本使用”更新的配置文件证书,这可以解决我的问题。

enter image description here

答案 5 :(得分:1)

“自动管理签名”不适用于Xcode 9.3。应在“构建设置”中手动选择代码签名标识。

是的。 您可以选择代码签名身份作为 iOS开发人员进行开发,选择 iOS发行版进行生产构建设置签名中。

答案 6 :(得分:1)

您需要确保:

  1. 您的 Apple 开发 -> 证书、身份和配置文件都具有正确的配置文件“分发配置文件名称”,其中包括如下图 1 中的签名证书
  2. 在 xCode 中相同

图1。 enter image description here

答案 7 :(得分:0)

我也不得不多做一些事情。在重新创建证书之前,我删除了钥匙串,启用和禁用了自动签名。

然后我在“构建设置”部分中切换了证书,最后我能够在常规部分中选择正确的证书。

确实缺少Android签名的简单性。:P

答案 8 :(得分:0)

就我而言,developer.apple.com上的Provisioning Profile列出了两个开发人员证书。一个被选中,一个未被选中。对其进行了更改,因此都选择了它们,然后保存,安装了更新的配置文件并对其进行了修复。

答案 9 :(得分:0)

就我而言,我有多个配置文件和各种证书。我不得不去Apple开发人员那里,从错误中编辑配置文件,并向其中添加每个证书,然后它就起作用了。

答案 10 :(得分:0)

如果您在另一台计算机上拥有此证书,则可以从钥匙串中将其导出并在另一台计算机上导入。

我的问题是我不知道如何将私钥与证书匹配,因为我在KeyChain中使用了“所有项目”过滤器。

如果您切换到Certificates,私钥将位于证书下,因此您可以轻松导出正确的密钥对。

答案 11 :(得分:0)

在我的例子中,我通过将类型为“iOS Distribution”的证书更改为另一个类型为“(Distribution) For use in Xcode 11 or later”的证书更改了配置文件以解决问题,然后下载它并将其导入 keyChain,从 Xcode 中选择。