Как получить данные из API в фоновом сервисе в Android Kotlin? - PullRequest
0 голосов
/ 01 ноября 2019

Я хочу получить некоторые данные из моего собственного API, но я хочу, чтобы приложение получало эти данные в фоновом режиме, чтобы сохранить их в моей базе данных, и это следует делать каждый раз в зависимости от моего выбора. Любая помощь с этим, и я буду признателен за это. Спасибо вам всем.

1 Ответ

0 голосов
/ 02 ноября 2019

Вместо фоновой службы используйте WorkManager: https://developer.android.com/topic/libraries/architecture/workmanager

Позволяет планировать фоновые задачи через определенные промежутки времени, для определенных сетевых подключений (например, только для Wi-Fi) и т. Д. Мощные вещи.

Примериспользование (скопировано со связанной страницы), когда вы хотите выполнять какую-либо работу с почасовым интервалом во время зарядки устройства:

val constraints = Constraints.Builder()
        .setRequiresCharging(true)
        .build()

val saveRequest =
PeriodicWorkRequestBuilder<SaveImageToFileWorker>(1, TimeUnit.HOURS)
    .setConstraints(constraints)
    .build()

WorkManager.getInstance(myContext)
    .enqueue(saveRequest)
...