2013-01-19 21 views
5

Ich habe onRestoreInstanceState und onSaveInstanceState implementiert. Beide funktionieren erfolgreich, wenn die App minimiert wird (durch Drücken der Home-Taste oder einer anderen Aktivität im Vordergrund). Wenn ich jedoch die App minimiere und den Prozess abbringe (indem ich die Liste der aktuellen Prozesse öffne und diese beende), stellt die App den Status der gespeicherten Instanz nicht wieder her. Wie kann ich diesen gespeicherten Zustand wiederherstellen? Ist meine beste Option, das savedInstanceState-Paket mit serializable in eine Datei zu schreiben (also etwas auf der Festplatte gespeichert zu haben, anstatt RAM), dann lade den savedInstanceState erneut aus der Datei?Wiederherstellungsstatus, nachdem der Prozess beendet wurde

Antwort

8

Wie kann ich diesen gespeicherten Zustand wiederherstellen?

Sie können nicht. Dafür ist der gespeicherte Instanzstatus nicht zuständig.

ist meine beste Option, um die savedInstanceState Bündel in eine Datei mit serializable (also mit etwas, dass auf der Festplatte, sondern dann RAM gespeichert ist), dann laden Sie die savedInstanceState aus der Datei zu schreiben?

Ihre "beste Option" ist die Persistenz, z. B. eine Datei, eine Datenbank oder SharedPreferences. Ihr spezifischer Ansatz erscheint seltsam.

Saved Instanz Zustand ist nur für temporäre Informationen, wie zum Beispiel den Inhalt einer Form, dass der Benutzer in aber noch nicht eingereicht gefüllt hat. Alles darüber hinaus gehört nicht in den Zustand der gespeicherten Instanz, sondern in eine Art persistentes Datenmodell. Dies ist nicht anders als beim Erstellen einer Web-App, bei der die Daten in Ihren DOM- und JavaScript-Variablen nicht für immer bestehen bleiben, sondern irgendwo gespeichert werden müssen (normalerweise auf einem Webserver).

+0

Danke, ich wollte nur bestätigen, dass ich in eine Datei schreiben müsste. – Rilcon42

Verwandte Themen