Что такое IntentService

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

Ответ

IntentService — это подкласс Service, предназначенный для выполнения асинхронных задач в фоне. Он автоматически создает рабочий поток и обрабатывает задачи последовательно в очереди. После завершения всех задач сервис сам останавливается.

Особенности:

  • Работает в фоне (не блокирует UI)
  • Обрабатывает Intent-запросы по очереди
  • Автоматически завершается после выполнения задач

Пример:

class MyIntentService : IntentService("MyIntentService") {
    override fun onHandleIntent(intent: Intent?) {
        // Фоновая работа
        val data = intent?.getStringExtra("DATA")
        // Обработка данных...
    }
}

Запуск:

val intent = Intent(context, MyIntentService::class.java)
intent.putExtra("DATA", "Some data")
context.startService(intent)

Примечание: Начиная с Android 8.0 (API 26) IntentService считается устаревшим. Рекомендуется использовать WorkManager или JobIntentService.