Single

aide使用androidx出现错误:Caused by: java.lang.ClassNotFoundException: Didn’t find class “androidx.lifecycle.MutableLiveData”

使用aide创建的androidx项目运行时会报一个错误:Caused by: java.lang.ClassNotFoundException: Didn’t find class “androidx.lifecycle.MutableLiveData”

 

报错日志:

Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.lifecycle.MutableLiveData" on path: DexPathList[[zip file "/data/app/com.mx.cfmbackups-KXLjN1LNeylRp0XGK2nmDQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.mx.cfmbackups-KXLjN1LNeylRp0XGK2nmDQ==/lib/arm64, /system/lib64]]

06-09 11:44:50.359 26996 26996 E AndroidRuntime at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)

06-09 11:44:50.359 26996 26996 E AndroidRuntime at java.lang.ClassLoader.loadClass(ClassLoader.java:379)

06-09 11:44:50.359 26996 26996 E AndroidRuntime at java.lang.ClassLoader.loadClass(ClassLoader.java:312)

通过报错日志得知是因为找不到MutableLiveData类引起的程序崩溃,MutableLiveData是livedata依赖库中的一个类,我们可以看一下该项目依赖了哪些库:

可以看到我们的项目默认依赖了appcompat和material库,并没有发现我们需要的livedata库,由此可知:aide创建的androidx项目缺少一个livedata依赖库

 

解决方案:

在项目app模块的build.gradle文件中添加livedata依赖:

implementation "androidx.lifecycle:lifecycle-livedata:1.0.0"

暂无评论

发表评论