[英]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.