В средстве запуска отображаются метки и значки всех недавно возобновленных задач . Если в вашем пакете приложений есть несколько приложений как отдельные действия средства запуска, средство запуска не знает, какую метку и значок отображать для действий, не связанных с запуском, например действий, запускаемых с плитки или уведомления. Это может привести к тому, что ваше приложение не будет отображаться в списке «Последние» в панели запуска или будет отображаться неправильно.
Отмечайте все действия
Убедитесь, что ваши действия, включая действия, не связанные с запуском, правильно помечены в файле манифеста, как показано в следующих шагах.
Рисунок 1. Примеры правильно обозначенных действий.
- Для каждого действия в файле
AndroidManifest.xml
определите, к какому действию средства запуска оно принадлежит. - Скопируйте значок, круглый значок и метку из родительского действия средства запуска в каждое связанное действие, не связанное с запуском.
Для действий, которые являются общими для нескольких действий средства запуска, решите, какой значок и метку отображать, которые представляют все из них.
Назначение последних задач
Чтобы использовать RecentTasks
для раздела «Недавние» в средстве запуска, убедитесь, что элементы taskAffinity
правильно определены в файле AndroidManifest.xml
и что вы последовательно управляете задачами и обратным стеком.
При назначении задач учитывайте следующие соображения:
- Выберите уникальное имя
taskAffinity
для каждой задачи в вашем приложении. Вы можете рассматривать каждое действие запуска и его дочерние элементы как одну задачу. Назначьте этотtaskAffinity
каждому связанному действию в файле манифеста. - Избегайте вызова
startActivity()
с помощьюFLAG_ACTIVITY_NEW_TASK
илиFLAG_ACTIVITY_CLEAR_TOP
. - Избегайте создания занятий на батуте , которые только запускают другие действия. Создавайте заставки с помощью API SplashScreen .
- Используйте флаги
android:excludeFromRecents="true"
иandroid:noHistory="true"
если вы не хотите, чтобы ваша активность отображалась в разделе «Последние» . - Определите лучший режим запуска для вашей деятельности и развивайтесь с учетом этого.
Советы по отладке
При отладке обратите внимание на следующие вещи:
- Если в разделе «Последние» для одного приложения есть двойные записи, проверьте, не используете ли вы флаг
NEW_TASK
ненадлежащим образом. - Если отображается неправильный значок или метка, убедитесь, что каждое связанное действие, не связанное с запуском, имеет тот же значок, круглый значок и метку, что и его родительское действие.
- Если система ничего не запускает после нажатия на запись в панели запуска, проверьте Logcat (отфильтрованный по «панели запуска») на наличие ошибок, так как эта проблема может быть вызвана активностью батута.
Рекомендуем
(Deprecated) Learn Jetpack Navigation
Learn how to implement common navigation requirements for Android apps. Navigation Components handle fragment transactions, up/back stack, navigation UI patterns like navigation drawers, deep links and more. You’ll also explore the type safe args plugin and the Navigation Editor in Android Studio.