Когда пользователь желает выйти из всех открытых действий , ему следует нажать кнопку, которая загружает первое действие, которое запускается при запуске приложения, очистить все остальные действия, а затем завершить последнее оставшееся действие.Запустите следующий код, когда пользователь нажимает кнопку выхода.В моем случае LoginActivity
- это первое действие в моей программе.
Intent intent = new Intent(getApplicationContext(), LoginActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("EXIT", true);
startActivity(intent);
Приведенный выше код очищает все действия, кроме LoginActivity
.Затем поместите следующий код в LoginActivity
s onCreate(...)
, чтобы прослушивать при воссоздании LoginActivity
и прохождении сигнала 'EXIT':
if (getIntent().getBooleanExtra("EXIT", false)) {
finish();
}
Почему создаетсяКнопка выхода в Android так сильно?
Android старается отговорить вас от использования кнопки «выход» в вашем приложении, потому что они хотят, чтобы пользователь никогда не заботился о том, являются ли используемые им программыработает в фоновом режиме или нет.
Разработчики ОС Android хотят, чтобы ваша программа могла пережить неожиданное отключение и выключение телефона, а когда пользователь перезапускает программу, они начинают с того места, где остановились.Таким образом, пользователь может получить телефонный звонок, пока он использует ваше приложение, и открыть карты, которые требуют освобождения вашего приложения для получения дополнительных ресурсов.
Когда пользователь возобновляет работу вашего приложения, он берет его там, где остановился, без перерыва.Эта кнопка выхода узурпирует питание менеджера активности, что может вызвать проблемы с автоматически управляемым жизненным циклом программы для Android.