2016-12-31 5 views
0

Ich möchte die Anwendung schließen anmutig. Ich habe zwei Methoden gefunden.Benötigt Klarstellung für das Schließen anmutig die Android-Anwendung

1. Mit Intents:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_HOME); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 

Dokumentation sagt:

Aktion Aktivität: Start als Haupteintrittspunkt, erwartet nicht, Daten zu empfangen.

Kategorie Home: Dies ist die Home-Aktivität, dh die erste Aktivität, die beim Start des Geräts angezeigt wird.

2. Mit Finish:

finish() 

Dokumentation sagt:

Rufen Sie diese Option, wenn Ihre Tätigkeit erfolgt und sollte geschlossen werden.

Was ist die beste Methode oder professionelle Methode zum Schließen der Android-Anwendung? Beide schließen die Anwendung, aber finish() entfernt die App aus dem Cache (App nicht in den letzten Aktivitäten) bei der Verwendung intent, Cache wird nicht gelöscht. Sollte der Cache beim Beenden der Aktivität aus der Zelle entfernt werden?

+0

"Was ist die beste Methode oder professionelle Methode zum Schließen der Android-Anwendung?" - Ich mache es überhaupt nicht. "but finish() entfernt die App aus dem Cache" - nein, das ist nicht so, denn eine Aktivität ist keine App. "App nicht in den letzten Aktivitäten" - 'finish()' entfernt die App nicht vom Übersichtsbildschirm (a.k.a., Liste der letzten Aufgaben), wenn Sie das meinen. – CommonsWare

Antwort

2

Der beste Weg ist die richtige ist, wie es in der offiziellen doc gesagt:

Rufen Sie dies bei Ihrer Aktivität getan und sollte geschlossen werden. Das ActivityResult wird an den Benutzer zurückgegeben, der Sie über onActivityResult() gestartet hat.

Die App ist eine Abfolge von Aktivitäten. Das Schließen der App bedeutet das Schließen der ersten Aktivität der App.

Die erste Methode, die Sie in Ihrem Beitrag beschrieben haben (1. Verwendung von Intents) scheint eine Umgehungslösung zu sein; Es ist ähnlich, wenn die physische Home-Taste Ihres Geräts gedrückt wird. Es lässt die Aktivität auf den Backstack zurück und startet die Home (First) -Aktivität des Geräts.

Verwandte Themen