Ich weiß, dass ein Bundle
verwendet werden kann, um Daten zwischen Aktivitäten zu übergeben, sowie zum Speichern und Wiederherstellen von Daten im Falle von Konfigurationsänderungen wie eine Bildschirmdrehung.Wie lange dauert ein Bündel?
Ich habe auch gelesen, dass SharedPreferences
ist die bevorzugte Möglichkeit, persistente Daten zu speichern, anstatt eine Bundle
.
Warum genau ist das der Fall? Damit eine Bundle
eine Konfigurationsänderung verarbeiten kann, muss sie auch nach dem Löschen einer Aktivität beibehalten werden. Was genau ist die Lebensdauer einer Bundle
? Gibt es einen bestimmten Punkt, an dem es willkürlich durch Garbage Collection beseitigt wird, oder bleiben Daten von Bundle
so lange bestehen, wie Sie sie nicht manuell löschen?
Wann wird eine Aktivität als abgeschlossen betrachtet? Ich weiß, es ist nicht, wenn die Aktivität zerstört wird. Es scheint auch, dass wenn der Benutzer zurück drückt, um eine App zu beenden, das Bündel zurückgesetzt wird? Wäre es also richtig zu sagen, dass eine Aktivität beendet ist, wenn der Benutzer eine App manuell beendet? – ryye
Eine Aktivität ist ** beendet **, wenn Sie entweder das Stoppen der App erzwingen oder der Benutzer die Schaltfläche "Zurück" drückt und die Implementierung der Implementierung onBackPressed() 'die Methode' finish() 'aufruft. Sie können mit der Methode 'isFinishing()' darauf zugreifen, ob eine Aktivität in Ihren 'onPause()', 'onStop()', 'onDestroy()' Methoden endet. – EpicPandaForce