【问题标题】:Firebase Cloud Messaging Push Notificartions don't arrive on iOS anymoreFirebase 云消息推送通知不再出现在 iOS 上
【发布时间】:2017-07-23 14:26:32
【问题描述】:

我对 iOS 上的 Firebase 云消息传递有疑问。我已经按照文档中的说明在应用程序中实现了 Firebase,并生成了一个 Firebase 实例 ID。但是,如果我尝试发送推送通知(例如使用http://pushtry.com/),则什么也没有发生。问题是,它确实工作了,而且我不记得更改了与通知有关的任何内容。

因为找不到任何东西,我什至尝试删除整个项目并从头开始重新做所有事情(通过复制代码)。然后它再次工作,但现在(一个小时后)再次,它再次不起作用。

如果我从 pushtry 或 Firebase 控制台发送 FCM,它会说消息已传递,但没有任何反应! (在 iOS 设置中启用了推送通知。它确实有效)

我真的不知道该怎么办。有人知道我能做什么吗?

提前谢谢你。

【问题讨论】:

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


    【解决方案1】:

    好吧,经过两天的极度沮丧,我想通了。 问题在于info.plist 文件中的FirebaseAppDelegateProxyEnabled 行设置为NO

    我拆线后,问题就消失了!

    我现在很放心

    【讨论】:

    • 这是一个奇怪的参数。我一直在寻找“无法获取 APNS 令牌”问题 2 天,并将“FirebaseAppDelegateProxyEnabled = false”添加到 info.plist 为我解决了这个问题。恰恰相反。我正在 iPad Pro (OS v10) 上运行测试。您的设备是哪个版本的?
    • iPad Pro 9.7、iOS 10.3.3
    • “无法获取 APNS 令牌”消息是一条红鲱鱼。 Firebase 最终会获取 APNS 令牌。我还最终将代理参数设置为 true (YES)。
    【解决方案2】:

    设置参数content_availabletrue

    【讨论】:

    • 我做到了。正如我所说,即使从官方 Firebase 控制台发送的消息也不会再到达设备上,即使它在网站上显示“已发送”。
    • 使用您自己的后端服务器来处理通知以确保其正常工作
    • 大部分时间消息确实会到达 iOS,但有时我们必须删除 Token 才能重新获得通信。
    【解决方案3】:

    在我的例子中,我已经迁移了我的 Apple 帐户并且忘记正确配置我的 Apple 和 Firebase 帐户。

    苹果方面

    1. 确保为该应用 ID 启用“推送通知”。
    2. 确保您已创建“Apple Push Notification service”证书并附加到 Apple Id。
    3. 创建稍后将更新的授权密钥加载 Firebase,以便它可以代表您与 Apple 服务器通信。 (link)

    Firebase 方面

    1. 确保在 Firebase 项目中正确设置 iOS Apple 包
    2. 上传您之前在 Apple 中创建的授权密钥 - 上面的第 3 步。 (link)
    3. 按照所有步骤将 iOS 应用与 Firebase SDK 集成

    就是这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-06
      • 1970-01-01
      • 2016-12-13
      • 1970-01-01
      • 2020-07-08
      • 1970-01-01
      • 2020-12-09
      • 2020-08-14
      相关资源
      最近更新 更多