Правильные флаги для запуска активности из лаунчера
У меня есть приложение, которое запускает приложение, выбранное пользователем при щелчке на нем (как в случае запуска). Обратите внимание, что фактический запуск приложения выполняется службой из-за абстракции.
Одно замечание пользователя: при запуске greader из вашего приложения greader открывается так, как если бы он никогда не использовался, запрашивая данные учетной записи и т. Д. Независимо от того, были ли они введены ранее. Запуск greader из любого другого метода (ящика приложений nova laucher) возвращает меня к моей обычной новостной ленте.
Другие пользователи сообщают о проблемах с аварийным завершением работы root explorer.
Моя лучшая ставка в том, что это как-то связано с флагами запуска. После изучения стандартного запуска Android, я пришел к выводу, что я использую те же флаги.
Эти флаги: Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
Какие флаги я должен использовать вместо этого? Я не предпочел бы добавлять исключения для определенных приложений, поэтому флаги должны работать для всех запускаемых приложений.
Спасибо за любую помощь
1 ответ
Проблема была не с самими флагами, они были просто в порядке. Эта проблема была с действием, не установленным должным образом. Проблема была решена путем инициализации намерения следующим образом:
Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_DEFAULT);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);