Unterscheiden Sie zwischen dem Drücken der Home-Taste und dem Öffnen einer anderen Aktivität
Ich habe drei Aktivitäten: - SplashActivity - MainActivity - PlayerActivity
Natürlich startet die App mit SplashActivity, startet dann MainActivity und wird geschlossen. MainActivity startet in einem bestimmten Moment PlayerActivity und geht in den Backstack. (MainActivity lebt, ist aber onStop) Dann muss ich MainActivity öffnen und PlayerActivity auf Hintergrund setzen (PlayerActivity lebt, ist aber onStop). Dann muss ich PlayerActivity erneut öffnen und MainActivity auf den Hintergrund stellen.
So PlayerActivity und MainActivity erhalten häufig onPause () und onStop () ohne onDestroy, wenn die App wechselt.
Ich muss alle Aktivitäten beenden und die App für SplashActivity jedes Mal starten, wenn der Benutzer die Home-Taste drückt. Die Home-Taste entspricht jedoch dem Umschalten zwischen Aktivitäten (onPause () und onStop ()). Also kann ich den Unterschied nicht fassen, um Aktivitäten zu töten.
Bitte hilfe.
EDITED: Unglücklicherweise, onUserLeaveHint hilft nicht, es ist das gleiche. Wenn der Benutzer HOME drückt, ruft dies auf:
onUserInteraction, onUserLeaveHint, onPause, onStop
Diese Aktivität gibt die vorherige Aktivität (Hauptaktivität) ohne Benutzeraktionen zurück.
public class PlayerActivity erweitert Aktivität
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_next);
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
startActivity(new Intent(PlayerActivity.this, MyActivity.class));
}
}, 5000);
}
}
Aber immer noch das gleiche:
onUserInteraction, onUserLeaveHint, onPause, onStop