Что такое подход Single Activity

«Что такое подход Single Activity» — вопрос из категории Архитектура, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Single Activity — это архитектурный подход, при котором приложение использует только одну Activity, а навигация и UI управляются через Fragments, Jetpack Navigation или Compose.

Преимущества:

  • Упрощает управление жизненным циклом
  • Уменьшает накладные расходы на создание/уничтожение Activity
  • Позволяет гибко управлять UI через FragmentManager

Пример с Navigation Component:

// MainActivity.kt  
navController = findNavController(R.id.nav_host_fragment)  
NavigationUI.setupActionBarWithNavController(this, navController)  

// nav_graph.xml  
<navigation>  
    <fragment android:id="@+id/homeFragment" ... />  
    <fragment android:id="@+id/detailsFragment" ... />  
</navigation>  

Недостатки:

  • Сложность при глубокой навигации
  • Ограничения в кастомизации переходов (по сравнению с Activity)