Looking for firebase Keywords? Try Ask4Keywords

firebaseFirebase-Offline-Funktionen


Einführung

In diesem Beitrag werden die verschiedenen Möglichkeiten zur Implementierung von Offline-Funktionen bei der Verwendung von Firebase . Informationen dazu, wann und warum eine gute Idee hilfreich sein könnte, ermöglichen Offline-Funktionen und Beispiele für Android-Plattformen.

Bemerkungen

Was soll ich verwenden? Datenträgerpersistenz oder KeepSynced-Anrufe?


Aus meiner Erfahrung kann ich sagen, dass es immer darauf ankommt, was Ihre App funktioniert und wie Sie die Transaktionen und die Datenbank Ihrer Anwendung verwalten. Wenn Sie beispielsweise über eine Anwendung verfügen, in der der Benutzer nur Daten schreibt und liest, diese jedoch nicht gelöscht oder bearbeitet werden kann, ist DiskPersistence die richtige Wahl.

Außerdem speichert DiskPersistence Daten im Cache. DiskPersistence bedeutet, dass Ihre App mehr Speicherplatz auf den Geräten des Benutzers belegt, was in Ihrem Fall möglicherweise nicht die beste Idee ist.

Wenn Ihre Anwendung andererseits viele komplexe Transaktionen verwaltet und Ihre Daten wirklich häufig aktualisiert werden, sollten Sie möglicherweise DiskPersistence vermeiden und keepSynced in den Referenzen verwenden, die Sie keepSynced halten möchten.

Warum?


DiskPersistence speichert die abgerufenen Daten in local, was manchmal zu einer Desynchronisierung der Daten führen kann, wenn Sie sie nicht zusammen mit ListenerValueEvents . Zum Beispiel:

  1. Benutzer A schreibt eine Nachricht "Hello World" in Ihre App, die für Benutzer B empfangen wird
  2. Benutzer B lädt Nachricht von Benutzer A in sein Telefon herunter und zeigt die Nachricht "Hello World" an.
  3. Benutzer A edit ist seine Nachricht an "Firebase is cool".
  4. Benutzer B wird die Nachricht "Hello World" weiterhin anzeigen, auch wenn er die Daten aktualisiert, da der Snapshot-Ref beim Firebase-Filter derselbe ist.

Um dies zu vermeiden, sollten Sie die Zuhörer ständig in den Referenzen halten, die Sie ständig verfolgen möchten.

Kann ich beides zusammen verwenden?


Natürlich ist dies möglich, und in den meisten Apps ist es möglicherweise die beste Idee, das Herunterladen vieler Daten zu vermeiden und dem Benutzer die Möglichkeit zu geben, mit Ihrer App zu arbeiten, auch wenn er keine Verbindung hat.

Wenn Sie sich nicht für die Verwendung von Cache-Speicherplatz auf dem Benutzergerät diskPersistence , empfehle ich Ihnen, diskPersistence in Ihrem FirebaseDatabase Objekt zu aktivieren und jeder Referenz ein keepSync hinzuzufügen, das in kurzer Zeit viel Zeit benötigt oder Sie möchten Bleib immer frisch.

Firebase-Offline-Funktionen Verwandte Beispiele