Frage

Ich wünsche einige App-Statusdaten zu speichern, wenn der Benutzer die App zu verlassen. Ich denke, dass ich die applicationWillTerminate Methode innerhalb meines AppDelegate verwenden, aber wenn ich versuche, und es tue nichts, es ist nichts zu tun:

- (void) applicationWillTerminate:(UIApplication *)application {
NSLog(@"test");
 }

Wenn ich meine app laufen, und ein paar Sachen tun, und drücken Sie die Home-Taste die App zu verlassen, kommt nichts an der Konsole über ...

Muss ich die applicationWillTerminate Methode in der AppDelegate implementieren? Der Benutzer meiner App wird höchstwahrscheinlich in einer Reader Ansicht sein, wenn sie zu verlassen, ist es trotzdem, um die Anwendung zu implementieren wird Verfahren schließen da?

War es hilfreich?

Lösung

siehe diesen Link iPhone Simulator und applicationWillTerminate () für ältere iOS-Versionen;

aber nicht vergessen, die Home-Taste beendet nicht unbedingt die Anwendung ios4 ist ... Sie applicationDidEnterBackground verwenden sollten, würden aber beiden Orte vorschlagen applicationWillTerminate und applicationDidEnterBackground

Das Hinzufügen der UIApplicationExitsOnSuspend Schlüssel zu Ihrer Anwendung Info.plist Datei und sein Wert auf YES werden Sie Anwendung machen beendet, wenn Sie die Home-Taste getroffen, auch auf iOS4

Andere Tipps

In iOS 4 wird die applicationWillTerminate: Methode nur aufgerufen, wenn Sie die Hintergrundausführung Modell Opt-out. In dem Standard-iOS 4 Application Lifecycle, werden Anträge ausgesetzt (nicht beendet), wenn die Home-Taste gedrückt wird. Ihre Bewerbung Teilnehmer erhält eine applicationWillResignActive: Nachricht erhalten, gefolgt von einer applicationDidEnterBackground: Nachricht. Die applicationDidEnterBackground: Methode ist ein guter Ort, um Benutzerdaten zu speichern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top