Когда стоит использовать Service

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

Ответ

Используй Service для выполнения долгосрочных операций в фоне, когда не требуется взаимодействие с пользователем. Например:

  • Воспроизведение музыки
  • Загрузка файлов
  • Синхронизация данных

Для коротких задач лучше WorkManager или Coroutine. Если нужен двусторонний IPC — BoundService.

class MyService : Service() {
    override fun onBind(intent: Intent?): IBinder? = null

    override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
        // Фоновая задача
        return START_STICKY
    }
}

Важно: Начиная с Android 8.0, для фоновых сервисов нужен foregroundService с уведомлением.