Ответ
Сервис стартует в главном потоке (UI-потоке) приложения. Это означает, что если в onStartCommand() или onCreate() выполнять долгие операции, это приведёт к ANR. Для фоновых задач нужно либо использовать IntentService (устарел), либо явно запускать отдельный поток/Coroutine/WorkManager.
Пример с IntentService:
class MyService : IntentService("MyService") {
override fun onHandleIntent(intent: Intent?) {
// Работает в фоновом потоке
}
}
Для современных решений лучше использовать WorkManager или CoroutineScope с Dispatchers.IO.