Как обеспечить активность, если приложение работает? - PullRequest
1 голос
/ 22 января 2010

Я запускаю активность из своего виджета, который должен запускать специальный вид.
Но если приложение уже запущено (не оставлено с кнопкой «Назад»), Android вместо этого активирует действие, которое было показано в последний раз.
Есть ли какой-либо флаг или другой способ избежать такого поведения?
Закрытие предыдущего действия не будет проблемой в моем приложении, пользовательский ввод не будет потерян.
Я попробовал обходной путь с finish () в onStop (), но onStop также вызывается, когда вызывается вспомогательное действие (startActivityForResult), поэтому возвращение оттуда ничего не возвращает - приложение будет закрыто.

Ответы [ 3 ]

1 голос
/ 03 августа 2010

У меня тоже была эта проблема, и я решил ее, используя android:launchMode="singleInstance" в каждом объявлении о своей деятельности.

0 голосов
/ 07 июня 2011

Вызовите намерение с FLAG_ACTIVITY_NEW_TASK и добавьте к основной деятельности:

андроид: launchMode = "singleTask" андроид: clearTaskOnLaunch = "истинный"

К другим добавить:

android:finishOnTaskLaunch="true"

Таким образом, он прекратит любую активность при возврате в приложение после нахождения в фоновом режиме.

0 голосов
/ 22 января 2010

Попробуйте android:clearTaskOnLaunch="true" в манифесте действия, содержащем «специальный вид».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...