Xcode版本8中的代码签名问题

时间:2016-09-19 05:24:57

标签: ios ios10 xcode8

我在iOS 10发布后将Xcode更新为版本8。 Apple在代码签名过程中进行了一些更改,现在可以在目标设置的常规部分中使用。但问题是我的生产配置文件显示为不合格的配置文件。此错误消息即将发生:

  

“xxxproductionprovisioningprofile”不包括签名证书   “iPhone发行:xxx(xxx)”。

我再次使用相同的分发证书创建了配置文件。分发证书也存在于钥匙串中。在Xcode 7.3及更早版本中,一切都运行良好。任何帮助表示赞赏。

10 个答案:

答案 0 :(得分:25)

我也面对这个问题,并通过以下方式修复:

1-从钥匙串中删除我帐户的所有证书,

2-从xcode删除所有配置文件,然后

3-再次通过xcode和

下载配置文件

4-再次将证书添加到钥匙串。

答案 1 :(得分:5)

我遇到了同样的问题,我也尝试从登录密钥链中删除所有证书,但问题仍然存在...... 然后,幸运的是有一天,我打开系统钥匙串,发现那里添加了多个分发证书。我从那里删除了那些。然后问题终于解决了。)

因此,如果您遇到此问题,请确保从登录名和系统密钥链中删除您的证书,然后将其再次添加到登录密钥链中。 希望它有所帮助。

答案 2 :(得分:3)

我遇到了同样的问题,修复了它而无需再次删除和下载所有内容。

我只是启用了自动签名,等待它检测我的签名证书,然后禁用它。之后,我能够重新选择所需的配置文件,并按原样检测到签名认证。

答案 3 :(得分:3)

好的,如果您不想删除所有预设配置文件和证书,请不要使用自动临时配置文件,请尝试以下步骤:

  1. 从帐户中删除临时配置文件(cmd +,),您可以根据用户查看所有临时配置文件的列表。

  2. 从钥匙串中删除证书(登录 - 证书 - 搜索导致冲突的证书)

  3. 从开发人员面板(证书,ID和配置文件 - 配置文件)启用您的临时配置文件,使您与要使用的证书冲突。

  4. 手动下载临时配置文件(指标中应为绿色)。

  5. 从“开发人员面板”中,转到“证书”部分,然后下载与您在上一步中更新的“临时配置文件”关联的证书。

  6. 双击您下载的证书以安装并验证它是否在Keychain中

  7. 双击您下载的试用版。

  8. 转到Xcode(Project - Targets - General)和名为" Singing(Debug或Release)"的部分。你可以在Elegible中看到新的临时档案。

  9. 它看到您需要更新它们(证书和临时配置文件),但如果您删除一个,另一个保留以前的引用,Xcode不会自动更新。我这样做了,效果很好。

答案 4 :(得分:1)

正如@mgentilc所说,自动签名有效。只需在常规中启用自动管理签名 - >签名后,Xcode将自动创建和更新配置文件,应用程序ID和证书。

答案 5 :(得分:1)

按照以下步骤操作:

  1. 选择目标 - >一般 - >签名 - >选择所需的团队(必须是超级帐户)
  2. 然后选择Target中的Build Settings,让开发团队与Selected团队保持一致。使用iOS Developer为自动和代码签名标识设置配置文件。
  3. 选择项目 - >构建设置。使用详细信息设置供应配置文件和代码签名标识

答案 6 :(得分:1)

从Xcode7更新到Xcode8后,我遇到了同样的错误。我不需要安装证书。

  1. 在我的情况下,我只需要去 Xocde - > “偏好” - > “中的帐户”即可。

  2. 我必须再次登录我的现有帐户,登录名为 过期。

  3. 重要提示:在此之后,重新启动Xcode
  4. 然后一切都按预期工作。

    最好的问候

答案 7 :(得分:1)

我遇到了同样的问题,但为了解决这个问题,我最终生成了一个额外的App Store配置文件'和'临时配置文件'

希望能帮助他人。

答案 8 :(得分:1)

此问题是由于个人资料中证书中的私钥与钥匙串中的私钥不匹配。 我可以通过

解决
  1. 删除钥匙串中的所有iPhone Developer证书。
  2. 删除Apple帐户中的所有证书。
  3. 使用xcode“管理证书”添加证书,有时您的Mac中仍然有证书,但是我不知道它现在在哪里,如果添加成功,您的Apple帐户也会显示该证书,然后您可以使用该证书创建您的个人资料并下载... goto 5
  4. 如果您使用“管理证书”无法添加证书,则可以创建新证书,并保留其余步骤。
  5. 完成。

答案 9 :(得分:0)

在我的情况下,我的个人资料具有有效的证书,但即便如此,它仍然显示其他证书名称错误(选择错误的证书)。我必须在代码签名下的构建设置中手动选择正确的开发证书。 enter image description here