2

У меня есть два действия в моем приложении. Первый запуск режима запуска - SingleInstance, а второй режим запуска активности - singleTask. Я использую эти стартовые макеты, потому что я не хочу уничтожать любую активность при переключении между ними. Приложение работает правильно в случае использования мобильного телефона. Но в случае планшета несколько экземпляров (один из первого и другого второго действия) отображаются в последнем списке приложений. Как я могу избежать нескольких экземпляров в недавнем списке приложений?Несколько экземпляров приложения в последнем списке приложений планшета (Android)

ответ

3

Не используйте для этой цели специальные режимы запуска. Это создает больше проблем, чем решает. Вернитесь либо в стандартный режим запуска, либо в режим запуска singleTop.

Если вы просто хотите переключиться между двумя действиями, не заканчивая их или создавая новые, просто добавьте Intent.FLAG_ACTIVITY_REORDER_TO_FRONT в Intent, который вы используете для запуска одного Activity с другого. Это просто изменит действия в стеке без создания каких-либо новых экземпляров.

+1

Ваше решение работает правильно для меня. Однако, если мы используем Intent.FLAG_ACTIVITY_REORDER_TO_FRONT для переключения между действиями. Затем это может привести к обнаружению ошибки Google, которая подтверждена [здесь] (http://stackoverflow.com/questions/20695522/puzzling-behavior-with-reorder-to-front). Но я нашел [обходной путь] (https://code.google.com/p/android/issues/detail?id=63570#c15) для этой ошибки Для меня ваше решение работает правильно. Поэтому я считаю это правильным. – Jeet

+0

Рад помочь. И спасибо за ссылку на ошибку платформы. У меня есть коллекция X-летних ошибок платформы, которые никогда не исправлялись :-( –

Смежные вопросы