Ich möchte wissen, wann die App geschlossen ist, weil ich eine Datenbank löschen muss, wenn der Benutzer die App herunterfahren, nur in dem Moment, wenn der Benutzer die App schließen ist der richtige Zeitpunkt, um die SQLite zu löschen Datenbank, wie kann ich das erkennen?erkennen, wenn die Anwendung geschlossen ist
Antwort
Angenommen, Sie tun nicht finish()
Ihre Haupttätigkeit, Clearing Ihrer Datenbank innerhalb der onDestroy()
Methode dieser Aktivität könnte die nächste sein, was Sie erreichen möchten. Wie in den Kommentaren hingewiesen wurde, beziehen Sie sich auf http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle.
onDestroy() scheint manchmal nicht zu funktionieren, Android überspringt nur die onDestry() -Methode. – San
Die Verwendung von 'onPause()' wird empfohlen, da 'onDestroy()' nicht 100% zuverlässig ist (es hängt von den Systemressourcen ab) –
Dies ist eine fehlerhafte Design-Idee, die ein Missverständnis des Systems widerspiegelt - wenn der Prozess insgesamt stirbt, ist er tot, was bedeutet, dass Ihr Code nicht mehr läuft.
Sie können einige Tracking tun und haben die letzte onDestory() 'd Aktivität tun, um die Bereinigung als Höflichkeit, aber nicht davon ausgehen, dass es immer passieren, tatsächlich (die Methode nicht immer genannt ist). Wenn eine veraltete Kopie ein Problem darstellt, bereinigen Sie sie beim nächsten Lauf.
Das heißt, Sie können versuchen, die ndk verwenden, um einen Handler für Prozessbeendigungssignale bereitzustellen, aber ich würde immer noch nicht darauf zählen, dass es in allen Fällen funktioniert. Das beschränkte Potential, irgendeine Klangfunktionalität daraus zu gewinnen, würde wahrscheinlich den Aufwand nicht rechtfertigen, wenn Sie nicht bereits mit den beteiligten Konzepten vertraut sind.
Und nicht für eine Minute Fehler beim Aufräumen für einen Sicherheitsmechanismus, da die Datei dort ist, während Ihre App läuft, und würde bleiben, wenn Ihre App auf unerwartete Weise beendet wurde.
"Wenn eine veraltete Kopie ein Problem ist, bereinigen Sie sie beim nächsten Lauf." - Danke, guter Vorschlag – Nactus
- 1. Applescript ausführen, wenn die Anwendung geschlossen ist
- 2. Photoswipe.js erkennen Ereignis, wenn die Pswp-Galerie geschlossen ist
- 3. iOS Aufgabe, wenn Anwendung geschlossen ist
- 4. Wie lösche ich Cookies, wenn die Silverlight-Anwendung geschlossen ist?
- 5. notifyIcon immer sichtbar, auch wenn die Anwendung geschlossen ist
- 6. Chrome Extension Messaging API - erkennen, wenn der Port geschlossen ist
- 7. Wird select.poll Leseereignis (select.POLLIN) erkennen, wenn der Socket geschlossen ist
- 8. Kann ich erkennen, wenn ein Hintergrund-Thread von der Anwendung beendet wird, wenn die Anwendung geschlossen wird?
- 9. Die gepackte Anwendung funktioniert nicht, wenn die Eingabeaufforderung geschlossen wird
- 10. Werden die Threads angehalten, wenn die Anwendung geschlossen wird?
- 11. Popunder, wenn die Site geschlossen ist
- 12. Wie erkennen, ob die Eltern-Registerkarte geschlossen ist
- 13. C++ - Anwendung sendet Daten nur seriell, wenn sie geschlossen ist
- 14. Wenn ich zurück in Fragment (PreferenceFragment) drücken - Anwendung ist geschlossen
- 15. Service stoppt, wenn Anwendung geschlossen wird
- 16. So löschen Sie eine Datei, wenn die Anwendung geschlossen wird
- 17. Xamarin Android Hintergrund Dienst stürzt ab, wenn die Anwendung geschlossen
- 18. android - Anwendung ist nicht vollständig geschlossen
- 19. Schließen Sie einen anderen Prozess, wenn die Anwendung geschlossen wird
- 20. Wie ist es möglich, einen Alarm in iOS zu spielen, wenn die Anwendung geschlossen ist?
- 21. Erkennen, dass ein PopupMenu auf API-Ebene 11 geschlossen ist
- 22. UILocalNotification erkennen Taste geschlossen drücken?
- 23. Erkennen von Browser, wenn bestimmte Anwendung installiert ist
- 24. erkennen, wenn das Gerät ist
- 25. UWP-Apps, die Hintergrundaufgaben ausführen, wenn die App geschlossen ist
- 26. Erkennen, wenn natives Auswahl-Widget in UIWebView geöffnet/geschlossen wird
- 27. Wie schließe ich alle Stufen, wenn die Primärstufe geschlossen ist?
- 28. Erkennen, wenn andere Anwendung geöffnet oder gestartet
- 29. Anwendung ist Kraft auf virtuelles Gerät ist geschlossen
- 30. kann clientseitig Javascript erkennen, wenn der Server die http-Verbindung geschlossen hat, während der Client arbeitet?
** Lesen Sie die Dokumentation: ** http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle –
Ja, ich weiß das, aber die Frage ist, ich muss wissen, wann Gesamtanwendung ist geschlossen, Nein, wenn eine Aktivität geschlossen wird. – JLouis
Was Sie wollen, ist unmöglich. Ihr Prozess kann jederzeit vom Benutzer oder vom Betriebssystem beendet werden, und Sie werden nicht darüber informiert. – CommonsWare