Ответ
Да, сталкивался. Использовал WorkManager для фоновых задач и JobScheduler для точного планирования. Также работал с Firebase JobDispatcher (устарел) и AlarmManager для точных временных интервалов.
Пример с WorkManager:
val workRequest = OneTimeWorkRequestBuilder<MyWorker>()
.setConstraints(Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.build())
.build()
WorkManager.getInstance(context).enqueue(workRequest)
Для трекинга работы в реальном времени можно использовать ForegroundService с нотификацией.