Может ли сборщик мусора убить Activity, которая показывается пользователю

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

Ответ

Нет, сборщик мусора (GC) не может уничтожить активную Activity, которая находится на экране и взаимодействует с пользователем. Activity сохраняется в стеке задач и удерживается системой через сильные ссылки. Уничтожение возможно только после вызова onDestroy(), который происходит при явном завершении (например, finish()) или при нехватке ресурсов (редко, в фоне).

Пример защиты:

override fun onDestroy() {
    super.onDestroy()
    // Освобождаем ресурсы, но сама Activity уже "умирает"
}