我已经创建了证书来启用我的应用程序中的推送服务,但每次我尝试在我的钥匙链中添加证书时,添加证书后它会显示以下错误:

此证书的颁发者无效


当前回答

我想我想明白了。我导入了新的WWDR证书,该证书将在2023年到期,但我仍然在构建过程中遇到问题,我的开发人员证书仍然显示无效的发行者错误。

在keychain访问方式下,执行“查看->显示过期证书”。然后在您的登录钥匙串突出显示过期的WWDR证书,并删除它。 我的系统钥匙串中也有同样过期的证书,所以我也把它删除了(这很重要)。

在从登录和系统密钥链中删除过期的证书后,我能够再次为分发版构建。

其他回答

在苹果的开发者门户网站中,添加一个新证书,当被问到“你需要哪种类型的证书?”时,选择“WorldWide Developer relations certificate”。生成新的证书,下载并安装。当您这样做时,您将不再看到您所描述的消息。

编辑: 证书下载路径如下: https://www.apple.com/certificateauthority/ 您可以选择以下两种证书之一: "WWDR证书(将于02/07/23到期)" 或 "WWDR证书(2016年2月14日到期)"

如果您是从Fastlane来到这里的,那么这个片段可能会修复您的CI部署。在签名之前执行它。

 apple_intermediate_certificate_path = "/tmp/AppleWWDRCAG3.cer"
`curl https://www.apple.com/certificateauthority/AppleWWDRCAG3.cer --output #{apple_intermediate_certificate_path}`

other_action.import_certificate(
  certificate_path: apple_intermediate_certificate_path,
  keychain_name: YOUR_KEYCHAIN_NAME,
  keychain_password: YOUR_KEYCHAIN_PASSWORD
)

我想我想明白了。我导入了新的WWDR证书,该证书将在2023年到期,但我仍然在构建过程中遇到问题,我的开发人员证书仍然显示无效的发行者错误。

在keychain访问方式下,执行“查看->显示过期证书”。然后在您的登录钥匙串突出显示过期的WWDR证书,并删除它。 我的系统钥匙串中也有同样过期的证书,所以我也把它删除了(这很重要)。

在从登录和系统密钥链中删除过期的证书后,我能够再次为分发版构建。

当地日期尽量早于2月14日。对我有用!不能完全解决问题,只能暂时解决问题。

下面是我们解决这个问题的方法。

第一步:打开钥匙链访问,从“登录”和“系统”部分删除“Apple world wide Developer relations certification authority”(将于2016年2月14日到期)。 如果找不到,请使用“视图”菜单中的“显示过期证书”。

步骤2:下载并将其添加到Keychain访问->证书 (有效期2023年2月8日)。

步骤3:现在一切应该都恢复正常了。

参考:苹果全球开发者关系中级证书到期