FCM:哪里最好检索通知中显示的数据?

Posted

技术标签:

【中文标题】FCM:哪里最好检索通知中显示的数据?【英文标题】:FCM: where best to retrieve data displayed in the notification? 【发布时间】:2020-05-13 06:15:46 【问题描述】:

我有一个应用,我在其中使用 Firebase 函数设置了一些触发器。这些触发器将在他们关闭时向一组用户发送推送通知。通知将根据触发器显示一些信息,这些信息可能涉及根据 id 从一个或多个集合中获取数据。

我现在看到两个选项:

    我可以在触发函数中检索将在服务器端的通知中显示的数据,并将其发送到通知数据有效负载中,或者 在构建最终显示的通知之前,我可以通过通知数据有效负载发送 ID,并在 onMessageReceived() 中检索客户端显示的数据

一种选择比另一种更好吗?对于任一选项,我应该考虑哪些因素?

提前感谢您的建议。

【问题讨论】:

【参考方案1】:

我相信第一个选项更有意义,因为服务器端功能完全能够自行执行完整的操作,并且可能会更有执行力。

更不用说,例如,如果您使用 Firestore,则每个通知只能读取一次,而不是使用第二个选项读取两次。

第一个选项的拥护者要考虑的另一个最后一点是,网络可能会在您的操作过程中出现故障,并且通知将显示为不完整,或者您必须处理它可能在客户端,如果您在服务器端完成所有操作,您可以简单地不向您的用户发送“错误通知”并重试操作。

【讨论】:

谢谢,@ralemos。这一切都说得通。

以上是关于FCM:哪里最好检索通知中显示的数据?的主要内容,如果未能解决你的问题,请参考以下文章

使用FCM从服务器发送推送通知

Firestore 更改后使用 FCM 发送推送通知? [复制]

如果通知在脱机时发送,Android是否可以检索FCM通知

使用 phpmyadmin 显示通知

使用离子电容器的 FCM 推送通知在 IOS 中不起作用

Android推送通知的FCM限制?