如何生成有效的APNS证书(.p12),以便在GCM中用于iOS?

24

我正在尝试使用Google Cloud Messaging iOS平台示例应用程序。https://developers.google.com/cloud-messaging/ios/start

生成GoogleServices-Info.plist需要APNS开发和生产证书(PKCS#12文件格式)。 我已在MAC KeyChain Access中创建了.p12文件(打包了APNS dev证书和私钥)。

但是在上传.p12文件时,它显示它不是有效格式 (证书必须是有效的PKCS12文件)。

4个回答

55

这是我的解决方案,无需使用终端!

  • 删除您现有的证书(在钥匙串中):“Apple Development IOS Push Service”和“Apple Production IOS Push Service”

  • 打开Apple Developer,选择标识符、应用程序ID,选择 “YourApp”,编辑,推送通知,下载2个证书(dev和prod)。

“enter

“enter

  • 将这两个证书导入到钥匙串中。

  • 在钥匙串中,转到“我的证书”,找到“Apple Development IOS Push Service”和“Apple Production IOS Push Service”,单击箭头展开证书和密钥。

  • 选择证书和密钥,右键单击“导出 2个项目”,您即可获得 .p12 有效证书,准备上传到 GCM 服务。

“enter

“enter

此链接对我很有帮助:http://faq.appaloosa-store.com/knowledgebase/articles/61785-how-to-generate-push-notification-p12-file


3
关键是在导出为 .p12 格式之前同时选择证书和密钥。至少在我的情况下,这已经足够了。 - PakitoV
如果你这么说,我对iOS开发并不熟悉。 - dam1
@dam1,我非常高兴你的步骤起作用了,因为我不需要执行https://code.google.com/archive/p/apns-sharp/wikis/HowToCreatePKCS12Certificate.wiki中的任何OpenSSL步骤,所以我非常满意!谢谢。 - Magnus Smith
你能否发一下上传证书的 Google 管理页面链接(最后一个绿色截图)?我找不到它。 - Onestone
在我的情况下,只导出证书(私钥的父级)就可以了。导出证书和私钥都不行。 - Gautam Jain
显示剩余2条评论

4

对于仍然遇到这个问题的人,我找到的解决方案是不选择同时导出密钥和证书,而只导出已经包含密钥的证书。


2

你可以仅选择一个证书并导出为.p12格式。

Mac应用程序 > 钥匙串访问 > 我的证书 > 以.p12格式导出


1

当我们使用Firefox上传.p12文件时,会出现这个问题。在Chrome中,我可以上传相同的文件。


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