FCM - 为啥在较新的 Firebase Admin SDK 中不再支持 FCM 直接通道?

Posted

技术标签:

【中文标题】FCM - 为啥在较新的 Firebase Admin SDK 中不再支持 FCM 直接通道?【英文标题】:FCM - why no longer support FCM direct channel in newer Firebase Admin SDK?FCM - 为什么在较新的 Firebase Admin SDK 中不再支持 FCM 直接通道? 【发布时间】:2020-04-28 11:27:09 【问题描述】:

我正在尝试为 FCM 实现服务器以向 android/ios 设备发送通知。

我需要向 android 和 iOS 发送纯数据通知,但 iOS 似乎对于后台通知非常不稳定。 (即使应用程序在前台,我也经常根本没有收到消息。)

当我使用 FCM 直接通道使用旧版 FCM REST 服务器进行测试时,它在 iOS 上运行良好,但这对我来说不是一个选项,因为较新的 Admin SDK 不支持直接通道。

是否有任何理由在较新的 Admin SDK 中取消对 FCM 直接渠道的支持?我看到所有 Firebase 文档都建议使用 Admin SDK,但不知道为什么他们删除了对直接渠道的支持。

【问题讨论】:

嗨。谷歌自己(不是普通的 SO 用户)会更好地回答这个问题,因为这是一个商业决策。您是否尝试过与他们联系? 【参考方案1】:

如果我没记错的话,FCM sender-side APIs 从未明确支持直接渠道选项。作为发件人,您的选择是指定设备注册令牌或主题。这些选项也出现在较新的 FCM 发送方 API(即 Admin SDK)中。

直接通道是接收端选项。我看到这个选项最近在 the iOS SDK 中被弃用了。从事该回购工作的人应该能够为您提供有关该决定的更多背景信息。此外,如果您在 iOS 上遇到后台通知问题,我建议您为 iOS SDK 提交一个错误,并尝试修复它。

【讨论】:

以上是关于FCM - 为啥在较新的 Firebase Admin SDK 中不再支持 FCM 直接通道?的主要内容,如果未能解决你的问题,请参考以下文章

autoconf 配置脚本在较新的 Xcode 版本下中断

在 android 中获取位置无法在较新的设备上运行

使用3D Touch防止在较新的iPad上拖动图像和链接

使用 rc.status 的 Bash 脚本在较新的 SLES 上执行两次

Mono 本机二进制包无法在较新的 Linux 内核中加载 libc

在较新的 PHP 版本中使用具有相同 CSS 选择器名称的 PHP 变量时出现问题