Назад к вопросам
Junior — Middle
64
Можете объяснить принцип работы launchMode в Android и его основные варианты?
Компании, где спрашивали
Dogma
Ubic
Инити
Ответ от нейросети
sobes.tech AI
В Android launchMode определяет, как система управляет экземплярами Activity в стеке задач при запуске.
Основные варианты:
- standard (по умолчанию): каждый запуск создает новый экземпляр Activity, даже если такой уже есть в стеке.
- singleTop: если верхний элемент стека — это уже запущенная Activity такого же класса, новый экземпляр не создается, вызывается
onNewIntent(). - singleTask: создается только один экземпляр Activity в стеке; если Activity уже есть, система поднимает её на верх и вызывает
onNewIntent(). - singleInstance: похож на singleTask, но Activity запускается в отдельной задаче (task), изолированной от других.
Пример использования в манифесте:
<activity android:name=".MyActivity" android:launchMode="singleTop" />
Это помогает контролировать поведение навигации и предотвращать дублирование экранов.