[androidx.work.impl.WorkManagerInitializer:java.lang.ClassNotFoundException:路径:/data/app/app-2.apk]“ androidx.work.impl.WorkManagerInitializer”>

问题描述 投票:0回答:1

我最近将旧应用的后台服务迁移到了WorkManager。在最近的设备(低至sdk 22 included

)上,它看起来不错,可以运行重复的工作单元,甚至可以按预期在设备重新启动时安排它们。

问题是,当我针对旧版本(此处的旧版本非常相关)进行测试时,Android SDK 14是我的minSdkVersion。顺便说一句,WorkManager也应具有相同的内容:根据doc向后兼容,直至API 14]。如标题中所述,我得到的错误是

 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,并非常典型地使用它来安排后台操作。

我最近将旧应用的后台服务迁移到WorkManager。在最近的设备(包括sdk 22)上,它看起来还不错,可以运行重复的工作单元,甚至可以在整个设备上进行调度...

androidx android-workmanager
1个回答
0
投票

问题是由multiDexEnabled true引起的,出于未知原因,我在defaultConfig中拥有它。经过一些挖掘和issue

,我发现了它
© www.soinside.com 2019 - 2024. All rights reserved.