Есть ли способ убить мое приложение, кроме android.os.Process.killProcess и Sytem.exit (0)? - PullRequest
0 голосов
/ 01 декабря 2011

У меня проблема с моим приложением. Мне действительно нужно убить его, когда пользователь нажимает «Выход». Я испробовал оба метода, перечисленных в заголовке вопроса, и вот проблема: у меня есть постоянный (основной) сервис, выполняющий работу, поэтому для моего приложения есть иконка в трее. Когда пользователь переключается на мое приложение с помощью этого значка, а затем нажимает «Выход» - приложение убивает, но Android немедленно перезапускает его. Если пользователи переключаются обратно на приложение любым другим способом (кроме значка службы) - приложение не перезапускается при выходе.

Итак, каков надежный способ убить приложение?

P. S. В приложении всегда есть только одно действие, если это имеет какое-либо значение.

Ответы [ 3 ]

0 голосов
/ 01 декабря 2011

Вы можете использовать следующее намерение, чтобы выйти из своей деятельности

Intent startMain = new Intent(Intent.ACTION_MAIN);
          startMain.addCategory(Intent.CATEGORY_HOME);
          startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
          startActivity(startMain);

и Позвонить до завершения (), прежде чем вызвать это намерение.

0 голосов
/ 01 декабря 2011

Я нашел решение своей проблемы. Если я переместил свою активность в фоновый режим с помощью moveTaskToBack(true);, а затем завершил процесс, он не был перезапущен.

0 голосов
/ 01 декабря 2011

только для одного Activity, я выбираю finish().

...