FCM中的通知节点和数据节点之间有什么区别

时间:2018-01-22 05:51:06

标签: firebase firebase-cloud-messaging google-cloud-functions

我已经读过不要在请求正文中添加通知节点,并且我尝试发送没有通知节点,但似乎没有收到消息但是当我添加通知节点时它运行良好

那么, Firebase云消息传递中的差异通知节点和数据节点是什么?

{
    "to": "/topics/some_topic",
    "data": {
        "key_1" : "some_value",
        "key_2" : "some_value"
     },
     "notification":{
        "body" : "some_message"
     }
}

我能阅读的文档是否有链接?

2 个答案:

答案 0 :(得分:3)

data节点用于在应用程序位于后台/前台时发送通知,如果它也被杀死,则用于发送通知。

notification节点用于在应用程序位于前台时发送通知。如果它在后台,您将不会收到通知。

我找到的最佳选择是单独使用data节点。

此链接中也解释得非常好:The FCM messages types

答案 1 :(得分:0)

通知节点(又名通知消息)

发送时,这将在设备上收到通知,无论应用程序是否处于前台/后台/终止状态,但只有当应用程序不在前台时才会显示通知。您可以将最大 4 KB 的数据负载与此捆绑在一起。好处是您不必担心每次都生成通知,库会负责。缺点是无法 不显示通知,例如,当您想默默地做某事时。

数据节点(又名数据消息)

发送时,这将触发与普通通知节点相同的所有回调,唯一的区别是通知不会自行弹出,您是自己回调的主人!当您想静默执行某些操作时,这很有用,例如刷新缓存、更新数据库等。由于数据节点将具有数据有效负载并会在应用程序的任何状态下触发回调,因此您可以在你自己的并启动它。这让您可以自由地设计您的通知,但您想要什么!