androidx.work.impl.WorkManagerInitializer:java.lang.ClassNotFoundException:路径上的“androidx.work.impl.WorkManagerInitializer”:/data

2024-03-09

我最近将旧应用程序的后台服务迁移到工作经理 https://developer.android.com/topic/libraries/architecture/workmanager。在最近的设备上(低至包含 SDK 22)看起来不错,运行重复的工作单元并按预期安排它们甚至跨设备重新启动。

问题是当我测试旧版本时(旧版本在这里是非常相对的),Android sdk 14 这是我的minSdkVersion。顺便说一句还有WorkManager应该有相同的:向后兼容至 API 14根据doc https://developer.android.com/topic/libraries/architecture/workmanager/。如标题所述,我得到的错误是:

 java.lang.RuntimeException: Unable to get provider androidx.work.impl.WorkManagerInitializer: java.lang.ClassNotFoundException: Didn't find class "androidx.work.impl.WorkManagerInitializer" on path: /data/app/com.example.myapp.apk
    at android.app.ActivityThread.installProvider(ActivityThread.java:4822)

我没有任何自定义 WorkManager 配置/初始化,我只是添加了

     implementation 'androidx.work:work-runtime:2.2.0'

到我的模块的 gradle 并通常使用它来安排后台操作。


我有同样的问题安卓19

Reading this https://stackoverflow.com/a/49058316/2460094 and this https://developer.android.com/studio/build/multidex.html#mdex-gradle我解决了使用

Gradle:

multiDexEnabled true

Java:

public class MyApp extends Application {

@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

androidx.work.impl.WorkManagerInitializer:java.lang.ClassNotFoundException:路径上的“androidx.work.impl.WorkManagerInitializer”:/data 的相关文章

随机推荐