gpt4 book ai didi

android - WorkManager 未初始化异常,即使 WorkManagerInitializer 未在 list 中禁用

转载 作者:行者123 更新时间:2023-12-04 23:50:56 25 4
gpt4 key购买 nike

我有一个使用 WorkManager 的应用程序几个后台任务。最近我在生产日志中看到很多崩溃,原因是 WM 没有被初始化,即使我没有禁用 WorkManagerInitializer。在 list 中。

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.
at androidx.work.WorkManager.getInstance(WorkManager:161)
...

WM 文档说

By default, WorkManager auto-initializes itself using a built-in ContentProvider. ContentProviders are created and run before the Application object, so this allows the WorkManager singleton to be setup before your code can run in most cases.



在大多数情况下,有趣的部分是存在的。我想知道在什么情况下它在应用程序启动之前没有正确初始化。

我最初的猜测是我的代码中的一个错误可能创建了太多的 WM 任务,这些任务需要很长时间才能初始化,但我无法以这种方式重新创建崩溃。

任何人以前都见过这种行为并且知道这里会发生什么?为什么是 WorkManager在应用程序启动之前未初始化?

最佳答案

在 list 文件中添加以下代码

   <provider
android:name="androidx.work.impl.WorkManagerInitializer"
android:authorities="${applicationId}.workmanager-init"
android:exported="false"
tools:node="remove" />

关于android - WorkManager 未初始化异常,即使 WorkManagerInitializer 未在 list 中禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61923769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com