2

我發現了兩種可能的方法在火力地堡實時數據庫(在聊天應用爲例)的一些變化後交付通知火力地堡發送通知在實時數據庫的變化

  • 有可能使用Firebase的雲端功能,如in this blog post所述。

  • 我也發現here另一個更簡單的方法,只使用安卓服務,它偵聽數據庫中的更改。

我想知道什麼是利弊利弊兩種方法的努力實現其中之一之前和之後的第二個看起來比第一個要簡單得多。

+1

轉到雲功能的火力地堡。在客戶端,更少的代碼和更少的電池使用(擁有數據庫更改的主動監聽器會導致電池消耗,這應該避免)。 –

回答

4

https://www.codementor.io/sundayakinsete/firebase-real-time-notifications-app-to-app-opkwbo6ba描述的android service解決方案有很大的侷限性:

  1. 當應用程序沒有運行(請記住,當用戶將您的應用程序在後臺系統可以決定將其終止它不工作免費設備內存)
  2. 它使用額外的電池,內存和網絡數據,以保持服務主動偵聽遠程數據庫改變
  3. 每個設備與應用程序的運行,即使在後臺,將朝着10萬個的併發連接的數量限制到數據庫SE。
  4. 不會在iOS

對對方的工作,如果你使用Firebase Cloud Messaging(通過雲功能或自定義服務器):

  1. 可以收到通知,即使應用程序被關閉
  2. 您不會消耗額外的電池或CPU
  3. 您可以對實際在前臺使用應用程序的用戶使用100,000個併發連接的數據庫限制。
  4. 它適用於iOS和Web