【问题标题】:Google Firebase Push Notifications for iOS are not working in production environment适用于 iOS 的 Google Firebase 推送通知在生产环境中不起作用
【发布时间】:2016-12-26 08:09:06
【问题描述】:

我正在使用 Google Firebase Cloud Messaging API (FCM) 向我的 iOS 应用发送推送通知。 当我在具有开发配置文件 + 开发推送通知(沙盒)证书的设备上测试应用程序时,我可以获得成功的推送通知。

但是我无法让它在生产环境中运行。我使用正确的生产配置文件和生产推送通知证书进行了临时构建。并通过 iTunes 将 IPA 文件同步到设备进行测试(不是直接来自 xcode)。我仍然无法收到来自 firebase 控制台的推送通知。

我也已将正确的开发和生产证书(带有私钥)上传到 firebase。我已经仔细检查了每个可能出错的步骤,但仍然找不到问题。 有没有办法解决这个问题?还是无法将生产环境通知发送到 AdHoc 构建?

【问题讨论】:

  • 请解释为什么投反对票?
  • 您是否将设备令牌发送到 Firebase?
  • 我的意思是你把这个方法称为[[FIRInstanceID instanceID] setAPNSToken:deviceToken type:FIRInstanceIDAPNSTokenTypeProd];
  • 我没有将FirebaseAppDelegateProxyEnabled 设置为NO 来调用该方法。但我也试过这种方法。它没有用。
  • 我做得更好!我使用 testflight 的外部构建进行了测试;)

标签: ios xcode firebase apple-push-notifications firebase-cloud-messaging


【解决方案1】:

我有同样的问题。显然 Firebase 文档中存在错误。当您将用于生产的 APN 证书从您的钥匙串导出到 .p12 文件时,您必须选择实际的证书,而不是私钥。

确保在 Cloud Messaging APN 证书设置中将此 .p12 文件上传到 Firebase 控制台。

【讨论】:

  • 经过无数小时尝试新的应用程序构建,这解决了我的问题!谢谢!
  • 这应该包含在文档中。浪费了几个小时
  • 当我右键单击证书时,我没有选择创建签名请求。该选项仅在我选择私钥时出现。我错过了什么吗?
  • 令人难以置信的是,谷歌仍然没有纠正这个问题。 @BossGiveMeArrays 您必须在生成证书并将其下载到您的计算机后导出它
【解决方案2】:

有同样的问题。终于搞定了:

  1. 使用This 链接中提到的正确的ProjectTarget 构建设置。

  2. 并撤销现有推送证书并完全创建一个新证书,然后将新证书的.p12 文件上传到 Firebase 控制台。

【讨论】:

    【解决方案3】:

    解决我的问题的是使用新的身份验证密钥方法而不是旧的 p12 文件。您可以在 Firebase 文档中阅读更多内容,只需按照他们的步骤操作即可。

    【讨论】:

      【解决方案4】:

      我遇到了同样的问题。

      对我有什么帮助:将用于分发证书的 APNS 添加到 Firebase。就这么简单;)

      【讨论】:

        猜你喜欢
        • 2017-05-01
        • 2015-09-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-22
        • 2018-05-25
        • 2012-03-23
        相关资源
        最近更新 更多