Можете объяснить различия между ActivityContext, ApplicationContext и CoroutineContext в Android?

ActivityContext — это контекст, связанный с конкретным Activity.

Короткий ответ

Что ответить на собеседовании

ActivityContext — это контекст, связанный с конкретным Activity. Он содержит информацию о текущем экране, его ресурсах и жизненном цикле. Используется для операций, связанных с UI, например, создания диалогов или запуска новых Activity.

Подробный разбор

Ответ с пояснениями

ActivityContext — это контекст, связанный с конкретным Activity. Он содержит информацию о текущем экране, его ресурсах и жизненном цикле. Используется для операций, связанных с UI, например, создания диалогов или запуска новых Activity.

ApplicationContext — это глобальный контекст приложения, связанный с жизненным циклом всего приложения. Он не зависит от конкретного Activity и подходит для операций, которые должны жить дольше, например, для доступа к ресурсам, настройкам или сервисам.

CoroutineContext — это контекст корутины в Kotlin, который определяет, на каком диспетчере (потоке) будет выполняться корутина, а также содержит другие элементы, такие как Job или элементы управления исключениями. Это не связано напрямую с Android Context, а относится к управлению асинхронным кодом.

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

import kotlinx.coroutines.*

fun main() = runBlocking {
    launch(Dispatchers.IO) { // CoroutineContext с диспетчером IO
        // Выполнение фоновой операции
    }
}

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку