2017-04-18 52 views
1
FirebaseDatabase.getInstance().setPersistenceEnabled(true); 

此聲明在應用程序重新啓動期間保留了firebase數據庫中的所有讀寫操作。但是,我需要排除一些數據庫節點的持久性?如何排除某些Firebase數據庫節點的持久性?

我已經將數據存儲在本地數據庫中,並且僅爲數據庫寫入操作啓用了持久性。我的一些查詢正在下載大量數據以向用戶顯示一些報告,我希望Firebase將該查詢從緩存中排除。

有沒有一種首選的方法來做到這一點;或者我們如何只能堅持數據庫寫操作?

回答

2

此聲明在整個應用程序重新啓動時都保留了firebase 數據庫中的所有讀取和寫入操作。

它不會持續全部這些東西。它將持續最多10MB的最近讀取的數據。該限制不適用於您寫入的尚未同步的數據。

如果啓用此功能,則無法從持久性中排除任何路徑。

如果您想要從數據庫中讀取某些內容而不允許它訪問持久性緩存,請考慮通過REST API而不是通過SDK讀取它。

0

嘗試:

childnode.getDatabase().setPersistenceEnabled(false);