Android: закрытие приложения по кнопке "назад"

Подскажите, пожалуйста, как правильно закрывать приложение по нажатию кнопки «назад»? Сейчас использую вот такой код (в Activity):
	@Override
	public void onBackPressed()
	{
		moveTaskToBack(true);
		finish();
		System.runFinalizersOnExit(true);
        System.exit(0);
	}
	
	public void onDestroy() {
        super.onDestroy();

        System.runFinalizersOnExit(true);
        System.exit(0);
    }

Но что-то мне говорит, что это не совсем верно и избыточно. Приложение — игра с libgdx, используется только одно Activity.
  • Вопрос задан
  • 37948 просмотров
Пригласить эксперта
Ответы на вопрос 2
sheremetat
@sheremetat
Когда Вы закрываете приложение кнопной «Назад», то вызывается метод onDestroy(). Для этого перехватывать нажатие этой кнопки в методе onBackPressed() не имеет смысла. Достаточно сделать так:

public void onDestroy() {
moveTaskToBack(true);

super.onDestroy();

System.runFinalizersOnExit(true);
System.exit(0);
}


Перехватывать нажатие кнопки «Назад» имеет смысл тогда, когда надо реализовать подтверждение выхода из игры или что-то в этом роде.
Ответ написан
Комментировать
@YoungSkipper
Если вы от Application не наследуетесь, и как следсвие не изпользуете другого Context кроме Context-а вашего Activity — то достаточно только finish(). Ну и плюс конечно, если вы сами создаете thread-ы то их лучше явным образом удалить.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы