Надеюсь, что это поможет новым новичкам, основываясь на приведенных выше ответах, которые мне подходят, я также делюсь фрагментом кода, чтобы его было легко реализовать.
решение: я использовал isTaskRoot()
, которые возвращают true , если текущая активность является только активностью в вашем стеке , и кроме того, что я также обрабатываю случай, в котором если у меня есть некоторая активность в стеке, переходят к последней активности встек вместо открытия нового пользовательского.
В вашей деятельности
@Override
public void onBackPressed() {
if(isTaskRoot()){
startActivity(new Intent(currentActivityName.this,ActivityNameYouWantToOpen.class));
// using finish() is optional, use it if you do not want to keep currentActivity in stack
finish();
}else{
super.onBackPressed();
}
}