Если вы знаете, что деятельность должна быть только один в данный момент вы начинаете его, вы можете использовать FLAG_ACTIVITY_CLEAR_TASK
. Из документации:
Если установлено в намерениях передается Context.startActivity(), этот флаг будет вызвать любую существующую задачу, которая была бы связана с деятельностью в быть очищены перед началом деятельности. То есть, активность становится новым корнем пустой задачи, и все старые операции завершены. Это можно использовать только в сочетании с FLAG_ACTIVITY_NEW_TASK.
В этом случае, вы должны начать свою деятельность так:
Intent i = new Intent(OldActivity.this, NewActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(i);
покрытие() закрывает только текущую деятельность и предыдущую деятельность в задней стеке будет показано. – farhang67
Да, вы правы, извините, я отредактировал свой ответ –
use 'System.exit (0);' –