Я хочу запланировать задачу в поставщике контента:
class LogProvider : ContentProvider() {
override fun onCreate(): Boolean {
Log.i("Lagg", "Initializing LogCollection")
return try {
context?.let { LogCollectionInitializer().initializeCollector(it) }
true
} catch (e: Exception) {
false
}
}
// ...
}
Где инициализатор планирует работу:
WorkManager.getInstance()
.enqueueUniquePeriodicWork(
CleanLogDatabaseTask.DB_CLEANER_TASK_NAME,
ExistingPeriodicWorkPolicy.KEEP,
PeriodicWorkRequestBuilder<CleanLogDatabaseTask>(DB_CLEANING_INTERVAL, TimeUnit.MILLISECONDS)
.setBackoffCriteria(BackoffPolicy.LINEAR, PeriodicWorkRequest.MIN_BACKOFF_MILLIS, TimeUnit.MILLISECONDS)
.build()
)
Проблема в том, что я получаюэта ошибка:
java.lang.IllegalStateException: WorkManager is not initialized properly. The most likely cause is that you disabled WorkManagerInitializer in your manifest but forgot to call WorkManager#initialize in your Application#onCreate or a ContentProvider.
- Нет, я не отключил WorkManager init.Что именно вызывает эту проблему?
Должен ли я действовать по-другому, когда я получаю доступ к workManager от поставщика контента?