繁体   English   中英

Flutter 实时数据库通知 Firebase

[英]Flutter Notifications with Firebase Realtime Database

我有一个 Flutter 应用程序与 Firebase 实时数据库集成。 当数据库中的一个项目(让我们称之为警报)设置为“真”时,我想要一个通知(如果可能的话,实际上是一种警报)。 我总是看到用于通知的 firebase_messaging 插件,但我不确定我是否应该使用这个插件,尽管我的应用程序与消息传递没有任何关系。

我对 Flutter 和 Firebase 都是全新的,你能告诉我如何在应用程序未运行的情况下收听数据库吗?

顺便说一下,我目前只为 Android 构建应用程序,但我希望将来也为 IOS 构建它。 谢谢。

您可以使用/编写firebase 云功能 使用 firebase 云 function 你可以观察任何文档/字段并尝试编写触发逻辑,如果一个字段设置为 true 那么这个云 function 将通过 firebase 消息传递通知。

https://firebase.flutter.dev/docs/functions/overview/

当用户不主动使用应用程序时,没有可靠的方法可以继续监听 Firebase 实时数据库中的变化。 要在这种情况下通知用户数据库的更改,您需要在始终在线的环境中监听这些更改,然后通过 Firebase Cloud Messaging 向用户发送消息。

一个始终存在的环境是 Cloud Functions,它也是 Firebase 的一部分,它允许您在 Google 的服务器上运行 JavaScript 代码的小片段,以响应 Firebase 项目中发生的事情。 Firebase 的 Cloud Functions 文档作为示例,说明当数据库中发生有趣的事情时如何通知用户

开发人员可以使用 Cloud Functions 让用户保持参与并及时了解有关应用程序的相关信息。 例如,考虑一个允许用户在应用程序中关注彼此活动的应用程序。 每次用户将自己添加为另一个用户的关注者时,都会在实时数据库中进行写入。 然后,此写入事件可能会触发 function 以创建 Firebase 云消息 (FCM) 通知,让相应的用户知道他们获得了新的关注者。

显示如下所述的应用程序流程的图表

  1. function 触发写入存储关注者的实时数据库路径。
  2. function 组成一条消息以通过 FCM 发送。
  3. FCM 将通知消息发送到用户的设备。

要查看工作代码,请参阅发送 FCM 通知

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM