2016-10-31 2 views
0

Ich entschied mich, einen Test mit dem XCode iOS Simulator durchzuführen, um zu sehen, ob ein Beobachter an einem Ort in der Firebase-Datenbank auch dann noch feuern würde, wenn sich die App im Hintergrund befindet. Es stellt sich heraus, aber ich frage mich, ob dies unbestimmt ist, bis die App beendet wird oder ob sie tatsächlich nach einiger Zeit aufhört. Es ist sehr lange her, und die Beobachter feuern immer noch, wenn ich manuell den Wert in der Datenbank aktualisiere, den der Beobachter betrachtet. Beachten Sie außerdem, dass in den Funktionen meiner App keine Hintergrundmodi aktiviert sind. Daher scheint es, dass der Beobachter im Hintergrundmodus bestehen kann, obwohl keine expliziten Hintergrundmodi vorhanden sind.Wie beständig sind Firebase-Datenbankbeobachter?

Auf der einen Seite bin ich sehr froh, dass der Beobachter im Hintergrund bleibt, da dies für mich hilfreich ist, aber ich bin ein wenig besorgt zu wissen, warum dies passieren darf, da das iPhone in der Regel recht konservativ ist kommt dazu, Sachen im Hintergrund zu tun.

Antwort

1

Während der Listener in Ihrem einzelnen Testfall aktiv bleiben kann, sollten Sie sich nicht auf Firebase Database-Listener für die Bereitstellung von Hintergrunddaten verlassen.

Der Listener bleibt aktiv, solange die Verbindung offen bleibt. Es hängt vom Betriebssystem ab, wann es die Verbindung schließt. Es besteht eine gute Chance, dass der iOS-Emulator in diesem Fall ein anderes Verhalten aufweist als ein physisches Gerät.