Firebase云消息传递:无效的APNs证书

时间:2018-07-20 13:31:09

标签: firebase push-notification apple-push-notifications firebase-cloud-messaging

我无法从FCM控制台向iOS设备发送推送消息。我收到错误消息“检查设置中的APNs证书”。我的配置与FCM指南中的相同:

  1. 我在Apple开发者帐户中生成了Auth Key。
  2. 我将身份验证密钥上传到Firebase项目中,并放置了密钥ID和前缀(团队ID)。
  3. 我将FCM SDK添加到了我的iOS项目中(还添加了Google-service.plist)。
  4. 我将注册令牌保存在Firebase数据库中。
  5. 最后,我可以使用我的应用程序ID向所有设备发送消息(但无法接收此消息,我不知道为什么),但是我无法使用令牌将消息发送到选定的设备。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

  • 请检查GoogleServices-Info.plist中的应用名称和应用中的捆绑ID
  • 还要检查是否将plist文件放在正确的目录中。
  • 将Firebase项目中的身份验证密钥上载到Dev和Prod中。

这是不向您的应用发送推送通知的唯一原因。

答案 1 :(得分:0)

如果用于生成FCM令牌的捆绑包ID与Firebase应用程序中的捆绑包ID不匹配,即使您的Auth密钥配置正确,您也会收到错误void foo() requires (x != 0) { /*..*/ }

这似乎是有史以来最有可能导致此错误的原因。两次和三次检查FCM令牌是否由与Firebase控制台中列出的束ID完全相同的应用程序创建。

code: 'messaging/invalid-apns-credentials'不会验证它是否包含与其附加的应用程序相同的捆绑软件ID,因此很容易出错。

如果您的GoogleServices-Info.plist中不存在appId,则在Android方面会出现编译错误,从而避免了此问题。