У меня есть два действия в моем приложении. Первый запуск режима запуска - SingleInstance, а второй режим запуска активности - singleTask. Я использую эти стартовые макеты, потому что я не хочу уничтожать любую активность при переключении между ними. Приложение работает правильно в случае использования мобильного телефона. Но в случае планшета несколько экземпляров (один из первого и другого второго действия) отображаются в последнем списке приложений. Как я могу избежать нескольких экземпляров в недавнем списке приложений?Несколько экземпляров приложения в последнем списке приложений планшета (Android)
2
A
ответ
3
Не используйте для этой цели специальные режимы запуска. Это создает больше проблем, чем решает. Вернитесь либо в стандартный режим запуска, либо в режим запуска singleTop
.
Если вы просто хотите переключиться между двумя действиями, не заканчивая их или создавая новые, просто добавьте Intent.FLAG_ACTIVITY_REORDER_TO_FRONT
в Intent
, который вы используете для запуска одного Activity
с другого. Это просто изменит действия в стеке без создания каких-либо новых экземпляров.
Ваше решение работает правильно для меня. Однако, если мы используем 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
Рад помочь. И спасибо за ссылку на ошибку платформы. У меня есть коллекция X-летних ошибок платформы, которые никогда не исправлялись :-( –