android保持数据库,android – 保持Firebase实时数据库中的数据始终保持同步
我正在重新使用我的應用程序,它通過從網站獲取原始數據來更新它的內部SQLite數據庫,而不是官方API.
由于這非常容易出錯,我想將數據處理從客戶端移到后端服務器中.
我們的想法是每天多次在服務器上運行一個腳本 – 類似于之前的客戶端行為 – 并將數據存儲在Firebase實時數據庫中.然后,所有客戶端不再需要自己處理數據,而是從Firebase數據庫請求解析的數據.
我只是想知道保持數據同步的最佳方法是什么.
我提出了兩個想法,但由于我對Firebase不太熟悉,我不知道什么是更好的.
首先,我可以想象通過在某些節點上使用keepSynced()和setPersistenceEnabled()來保持客戶端上的數據同步.
但我不確定這是否會在應用程序處于后臺時保持數據最新.我也擔心這種方法的電池和網絡使用情況.
第三點是同時連接的數量,我問這種方法每個客戶端都會一直連接,對吧?
第二種方法是使用FCM在其感興趣的節點之一發生變化時通知客戶端,例如,使用Firebase云功能來偵聽事件并觸發消息.
然后客戶端將goOnline()再次與數據庫和goOffline()同步.這將避免大量連接以及減少電池和網絡使用.
但我不確定如何在離線時保留設備上的所有數據?
我不想使用SQLite數據庫來保存設備上的數據.
setPersistenceEnabled()是否足以在設備上保留特定數量的數據庫注釋?
或者兩者兼而有之?在所需節點上設置keepSynced()和setPersistenceEnabled(),并根據云消息設置goOnline()/ goOffline()?
任何基于自己的expiriences的幫助或建議歡迎!
總結
以上是生活随笔為你收集整理的android保持数据库,android – 保持Firebase实时数据库中的数据始终保持同步的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 股票网下申购条件
- 下一篇: 京东金条欠款逾期不还 有什么严重后果