Firebase: Was ist der Unterschied zwischen setPersistenceEnabled und keepSynced?

Ich dachte, die ganze Zeit, wenn ich die folgenden Daten für Chat-Konversation verwendet wird, wird jederzeit offline verfügbar sein. Was irgendwie nicht der Fall ist und alle Knoten vom Server geladen werden.

FirebaseDatabase.getInstance().setPersistenceEnabled(true);

Dann laut DOCS:

Persistenzverhalten: Durch Aktivieren der Persistenz werden alle Daten, die wir online synchronisieren, auf der Festplatte gespeichert und sind offline verfügbar, auch wenn wir die App neu starten. Dies bedeutet, dass unsere App mit den im Cache gespeicherten lokalen Daten wie online funktioniert.

Wenn Daten bereits offline verfügbar sind, wennsetPersistenceEnabled(true);, warum brauche ichkeepSynced(true) ?

DatabaseReference r = FirebaseDatabase.getInstance().getReference("chat/roomid");
r.keepSynced(true);

Antworten auf die Frage(6)

Ihre Antwort auf die Frage