Sobes.tech
Junior — Middle
90

Pouvez-vous expliquer le principe de fonctionnement de launchMode dans Android et ses principales variantes?

Entreprises à qui on a demandé
Dogma
Ubic
Инити

Réponse de l'IA

sobes.tech IA

В Android launchMode определяет, как система управляет экземплярами Activity в стеке задач при запуске.

Основные варианты:

  • standard (по умолчанию): каждый запуск создает новый экземпляр Activity, даже если такой уже есть в стеке.
  • singleTop: если верхний элемент стека — это уже запущенная Activity такого же класса, новый экземпляр не создается, вызывается onNewIntent().
  • singleTask: создается только один экземпляр Activity в стеке; если Activity уже есть, система поднимает её на верх и вызывает onNewIntent().
  • singleInstance: похож на singleTask, но Activity запускается в отдельной задаче (task), изолированной от других.

Пример использования в манифесте:

<activity android:name=".MyActivity" android:launchMode="singleTop" />

Это помогает контролировать поведение навигации и предотвращать дублирование экранов.