Firebase 检查颤振应用程序上是否有未读通知

Firebase 检查颤振应用程序上是否有未读通知,firebase,firebase-cloud-messaging,flutter,Firebase,Firebase Cloud Messaging,Flutter,我在flutter中编程了一段时间,在处理通过Firebase从服务器发出的通知时遇到了一个问题 问题是,如果我在电子应用程序关闭或处于后台时收到通知,我没有单击它,,则不会触发代码来解释传入的数据。另一方面,当它在前台或被点击时,一切正常。 显然,这不是火基问题 那么,当未单击通知数据时,如何处理该数据? 例如:我在网上时收到另一个用户的聊天信息。如果我没有单击通知打开聊天(放弃它或忽略并手动打开应用),消息将不会保存在本地数据库中 只有当用户单击通知时,才会调用onResume和onLaun

我在flutter中编程了一段时间,在处理通过Firebase从服务器发出的通知时遇到了一个问题

问题是,如果我在电子应用程序关闭或处于后台时收到通知,我没有单击它,,则不会触发代码来解释传入的数据。另一方面,当它在前台或被点击时,一切正常。 显然,这不是火基问题

那么,当未单击通知数据时,如何处理该数据?

例如:我在网上时收到另一个用户的聊天信息。如果我没有单击通知打开聊天(放弃它或忽略并手动打开应用),消息将不会保存在本地数据库中

只有当用户单击通知时,才会调用onResume和onLaunch函数

我想在应用程序恢复中检查是否有未读通知,但我不知道该如何做

任何帮助都将不胜感激。谢谢大家!

有两种:

  • 通知消息,有时被认为是“显示消息”。这些消息由FCM SDK自动处理
  • 由客户端应用程序处理的数据消息
当您的应用处于非活动状态时,系统将显示通知消息。如果用户没有单击通知,则您的应用程序无法知道是否收到过该消息

如果您的用例要求您的应用程序知道此类消息,那么您应该使用数据消息。您的应用程序中始终有。这也意味着您的应用程序可以决定是否向用户显示通知


第三种选择是发送组合通知/数据消息。您可以通过在发送给FCM的消息有效负载中同时具有
通知
数据
属性来实现此目的。

我让发送方将其存储在数据库中。不管是否打开了应用程序,接收者都会通过数据库接收消息。我使用通知只是为了方便用户在点击通知时导航到新消息。这可能需要来自主频道的最新颤振。我认为最近有一个解决方案可以让这一切顺利进行。我不确定这是否已经合并了。