In der Nähe der Feuerstellung Datenbank-Verbindung beim verlassen der Android-app
Machte ich eine Android-app erhält die Echtzeit-Daten von FB-Datenbank. In meinem Haupt-Aktivität der Benutzer-log-in mit e-mail und Passwort, und durch Erfolg, es öffnet sich eine neue Activity, welche die Daten empfängt.
Scheint es zu sein, dass, wenn der Benutzer lässt meine app, die FB-Verbindung ist noch hergestellt. Das ist nicht gut für die Batterie.
Wie ist die Möglichkeit zur Verwaltung der Verbindung für das schließen und öffnen der app? Ich denke, ich onPause()
und onResume()
. Ich fand so etwas wie goOffline()
, aber ich kann nicht finden, diese Methode in die neue Feuerstellung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, können Sie mit der Aktivität lifecycle-Methoden wie
onPause()
,onStop()
aufonDestroy()
schließen Sie Ihre Verbindung.Es scheint auch FB hat noch einen
goOffline()
Methode - https://www.firebase.com/docs/android/api/#firebase_goOffline.Alternative zur Verwendung der
goOffline()
undgoOnLine()
Methoden zu entfernenValueEventListeners
undChildEventListeners
wenn Sie nicht mehr benötigt werden. Meine Erfahrung (mit SDK 3.X nur) ist, dass FB automatisch trennen nach etwa 1 minute aus, wenn keine Listener registriert sind und keinem anderen Grund verbunden werden, wie einem anhängigen schreiben.Ich habe vor kurzem Hinzugefügt FB-Datenbank, um meine App, merkte aber gelegentlich hohe Akku-Verbrauch, und es scheint verknüpft zu sein mit meiner App halten Sie die radio-aktiven (radio aktiv, für 1 Stunde 30 Minuten bei 10 Stunden, aber app-Nutzung ca 5 Minuten).
Ich glaube, dass dies im Zusammenhang mit FB-Datenbank als habe ich deaktiviert die in-app-Kauf broadcast-receiver, der nur andere Netzwerk-element. Ich habe keine offenen Hörer (ich bin mit einem Wert von Ereignissen), aber einige der Geschäfte sind veränderlich, so ist es möglich, eine von Ihnen wurde nicht abgeschlossen und wird regelmäßig erneut zu versuchen. Datenbank-Persistenz aus.
Ich bin derzeit die Prüfung der folgenden einfachen Ergänzung zu pausieren/fortsetzen (got to get code in die Antwort 🙂 ) :
Und so weit, so gut. ** Die wichtigste Sache zu beachten ist der Wechsel der Aktivitäten, erfordert dies in jeder app, nutzt FB (ich hatte ein "sign-in" - Tätigkeit, welche nicht mehr funktionieren, wie es war zu Lesen, der Benutzername aus der Datenbank) **
5/12/16 - update nach ein paar Wochen testen. Die hohe Akku-Nutzung zurückgegeben gestern. Ich Teste in Erster Linie auf Lollipop, und es jede Menge Beschwerden über das radio offen für andere apps. Andere testen meiner App auf Android M nicht melden, keine Probleme, so dass es möglicherweise ein Lollipop-Problem. Ich werde weiter testen, dieses mal versuchen, entfernen Sie unnötige Transaktionen, um zu sehen, ob das hilft... Hoffe, das jemand hilft.