Какие знаешь особенности Activity

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

Ответ

  • Жизненный цикл: onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy(). Важно правильно управлять ресурсами (например, освобождать их в onDestroy()).
  • Конфигурационные изменения: Поворот экрана вызывает пересоздание Activity. Можно сохранить состояние через onSaveInstanceState() и восстановить в onCreate().
  • Запуск Activity: Через Intent с возможностью передачи данных (putExtra()).
  • Back Stack: Activity помещаются в стек. Нажатие "Назад" закрывает текущую Activity.
  • Одноразовые запросы: startActivityForResult() (устарел, теперь рекомендуется ActivityResultLauncher).

Пример сохранения состояния:

override fun onSaveInstanceState(outState: Bundle) {
    super.onSaveInstanceState(outState)
    outState.putString("KEY", "value")
}

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    val value = savedInstanceState?.getString("KEY")
}