Mam trzy czynności: - SplashActivity - główną działalność - PlayerActivityRozróżnić wciśnięciu przycisku „home” i otwarcie innej działalności
Oczywiście aplikacja rozpoczyna się SplashActivity, to zaczyna główną działalność i zamyka. MainActivity w pewnym momencie uruchamia PlayerActivity i przechodzi do backstack. (MainActivity żyje, ale jest onStop) Następnie potrzebuję otwartego MainActivity i ustaw PlayerActivity na background (PlayerActivity jest żywy, ale jest onStop). Następnie potrzebuję ponownie otworzyć PlayerActivity i ustawić MainActivity na tle.
Aktywność PlayerActivity i MainActivity często jest włączanaPause() i onStop() bez onDestroy, gdy aplikacja przełącza się między sobą iz powrotem.
Potrzebuję zakończyć wszystkie czynności i uruchomić aplikację dla SplashActivity za każdym razem, gdy użytkownik wciśnie przycisk "home", ale przycisk home powoduje to samo, co przełączanie pomiędzy działaniami (onPause() i onStop()). Więc nie mogę złapać różnicy, żeby zabić czynności.
Proszę o pomoc.
edycja: Niestety onUserLeaveHint nie pomaga, to jest to samo. Jeśli użytkownik naciska HOME to nazywa:
onUserInteraction, onUserLeaveHint, OnPause, OnStop
Ten aktywny powrót poprzedniej pracy (główny) bez jakichkolwiek działań użytkowników.
public class PlayerActivity rozciąga Aktywny {
@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);
}
}
Ale wciąż ta sama:
onUserInteraction, onUserLeaveHint, OnPause, OnStop
Opadowej 'SplashActivity ', jeśli nic nie robisz. –
Z drugiej strony, aplikacja działa dużo w SplashActivity, więc potrzebuję jej i muszę uruchomić SplashActivity za każdym razem, gdy użytkownik po prostu zwinie aplikację z przyciskiem głównym. –