[英]Flutter Notifications with Firebase Realtime Database
我有一个 Flutter 应用程序与 Firebase 实时数据库集成。 当数据库中的一个项目(让我们称之为警报)设置为“真”时,我想要一个通知(如果可能的话,实际上是一种警报)。 我总是看到用于通知的 firebase_messaging 插件,但我不确定我是否应该使用这个插件,尽管我的应用程序与消息传递没有任何关系。
我对 Flutter 和 Firebase 都是全新的,你能告诉我如何在应用程序未运行的情况下收听数据库吗?
顺便说一下,我目前只为 Android 构建应用程序,但我希望将来也为 IOS 构建它。 谢谢。
您可以使用/编写firebase 云功能。 使用 firebase 云 function 你可以观察任何文档/字段并尝试编写触发逻辑,如果一个字段设置为 true 那么这个云 function 将通过 firebase 消息传递通知。
当用户不主动使用应用程序时,没有可靠的方法可以继续监听 Firebase 实时数据库中的变化。 要在这种情况下通知用户数据库的更改,您需要在始终在线的环境中监听这些更改,然后通过 Firebase Cloud Messaging 向用户发送消息。
一个始终存在的环境是 Cloud Functions,它也是 Firebase 的一部分,它允许您在 Google 的服务器上运行 JavaScript 代码的小片段,以响应 Firebase 项目中发生的事情。 Firebase 的 Cloud Functions 文档作为示例,说明当数据库中发生有趣的事情时如何通知用户:
开发人员可以使用 Cloud Functions 让用户保持参与并及时了解有关应用程序的相关信息。 例如,考虑一个允许用户在应用程序中关注彼此活动的应用程序。 每次用户将自己添加为另一个用户的关注者时,都会在实时数据库中进行写入。 然后,此写入事件可能会触发 function 以创建 Firebase 云消息 (FCM) 通知,让相应的用户知道他们获得了新的关注者。
- function 触发写入存储关注者的实时数据库路径。
- function 组成一条消息以通过 FCM 发送。
- FCM 将通知消息发送到用户的设备。
要查看工作代码,请参阅发送 FCM 通知。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.