GCM证书配置无法正常工作或iOS

11

在尝试配置GCM并获取配置文件时,我遇到了一个问题。当我试图通过GCM门户上传生产证书时,它会显示“证书中的Bundle Id与您输入的Bundle Id不匹配”。我已经进行了验证,但仍然无法解决问题。请帮忙解决。


1
同样的问题。我已经检查了所有的捆绑包和证书,生成了新的证书,但是没有成功。 - zhukov.ever
同样的问题。新证书也不起作用。 - Akanksha
我尝试了三个证书,但都无法使用。我还尝试了下面提到的所有解决方案,甚至从钥匙串中导出了两个文件,但仍然无法使用。我在想这是否真的是Google的一个bug,因为我检查了每一个细节,但没有发现任何问题。 - DShah
8个回答

34

对于我的情况,我需要导出一个证书而不是私钥。输入图像描述


救了我的一天。也许是时候在 Firebase 文档中修复这个问题了。 - Benjamin
这句话可能应该添加到答案中-实际上,对于生产环境,您需要导出整个证书,而对于开发环境,只需要密钥。但两者的格式都是p12。 - stktrc

10

我也遇到了同样的问题,但原因不同。原来是 .p12 文件有问题。如果我通过选择证书和密钥并一起导出这两个项目来从钥匙串访问中导出 .p12 文件,那么它就不能工作。我需要单独导出证书和密钥,然后将它们合并。使用终端合并两个文件:

cat cert.p12 key.p12 > cert_merged.p12

我尝试使用这个命令,但没有帮助。您能否详细说明当我有密码保护的p12文件时它会如何行为? - DShah
还有一个问题:如何单独导出证书和密钥?我的做法是选择单个文件进行导出,但合并两个文件对我来说行不通。 - DShah
我选择了单个文件并导出它,但是我将密码字段留空。因此,这些 .p12 文件没有受到密码保护。也许这就是为什么我能够合并它们的原因。 - Denny Hsu
@Denn 目前,FCM正在误导这个过程。文档中只要求导出私钥。但是,当我这样做时,它会显示bundle id不匹配。当我导出包括私钥在内的整个证书时,它才能正常工作。无论如何,同时导出.cer和私钥的想法来自于您。感谢您的贡献。 - Dinesh Raja

9
我在Firebase (FCM)中遇到了完全相同的问题。
唯一有效的解决方法,是我通过试错找到的,就是在导出P12证书时,只选取证书而不选取密钥。
你仍然可以将只含有证书(没有密钥)的P12文件导出,并以类似的方式设置密码。
现在,使用提供的密码上传此P12文件对我有效。
请务必只导出证书而不是密钥...通过单击三角形/下拉图标并取消选择密钥来实现。

Export only the certificate not the key... by clicking on the triangular/caret dropdown icon and deselecting the key


4

我已经使用开发和生产环境的.p12证书文件,两者都能正常工作。

您需要确保使用正确的Bundle ID生成.cer证书文件,并确保从Keychain Access导出正确的.p12证书文件。您可以在此页面中查看示例步骤。

您需要确保在GCM门户中输入的与您的应用程序匹配(我使用的是com.ziyang.samples.quickstart.gcm)。

enter image description here

同时还需要确保该Bundle ID也在您的Apple Developer Portal中存在 (我使用的是 com.ziyang.samples.quickstart.gcm)。

enter image description here

如果我在GCM门户中输入的iOS Bundle ID有误,则会显示如下错误:

enter image description here


感谢您的帮助,问题现在已经解决。 :) - Akanksha
2
@Akanksha,请接受这个答案,如果它解决了你的问题,那么其他遇到相同问题的用户也可以解决他们的问题。 - ztan
1
尝试直接从证书创建p12文件(不是通过右键单击密钥,而是在证书上)。 - Shobhit C

2

请确保您正在使用APNS证书而不是普通的开发或生产证书。我刚刚因为这个错误浪费了一个小时才意识到!


0
如果你确定你设置了正确的bundle id,你可以通过以下方法解决它:
1-只导出私钥为p12格式。
2-只导出证书为p12格式。
3-将证书和私钥一起导出为p12格式。
然后逐个尝试以解决这个问题。

0
请在导出.p12文件时,在钥匙串访问中选择证书而不是密钥。

0
在导出开发证书时,需要输入密码。在没有添加密码之前,无论使用哪个建议,都无法上传开发证书。然而,我成功地上传了没有密码的发布证书。我还采用了@Sur Max的建议,只导出证书而不导出密钥。

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