Что такое Context в Android

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

Ответ

Context — это абстрактный класс, предоставляющий доступ к ресурсам приложения, системным сервисам и информации об окружении. Это базовый интерфейс для взаимодействия с системой Android.

Основные реализации:

  • Activity — контекст активности (живет пока активна Activity)
  • Application — глобальный контекст приложения (живет все время работы приложения)
  • Service — контекст сервиса
// Получение контекста в Activity
val context: Context = this

// Получение Application контекста
val appContext = applicationContext

Важно правильно выбирать контекст, чтобы избежать утечек памяти. Например, для Toast лучше использовать Activity контекст, а для долгоживущих объектов — Application контекст.