android-LiveData’dispatchingValue’方法中的致命异常:无虚拟方法iteratorWithAdditions()

android-LiveData’dispatchingValue’方法中的致命异常:无虚拟方法iteratorWithAdditions(),第1张

概述我有一个带有viewModel的视图,该视图可以观察我的LiveData.我从存储库(从Room或WebAPI获取数据)中获取数据.我已经实现了NetworkBoundResource抽象类,因此我可以管理以更干净的方式加载数据.此类使用MediatorLiveData对象:privatefinalMediatorLiveData<Resource<ResultType>>

我有一个带有viewmodel的视图,该视图可以观察我的liveData.我从存储库(从Room或WebAPI获取数据)中获取数据.
我已经实现了NetworkBoundResource抽象类,因此我可以管理
以更干净的方式加载数据.此类使用MediatorliveData对象:

private final MediatorliveData<Resource<ResultType>> result = new MediatorliveData<>();

崩溃发生在构造函数的第一行:

@MainThreadpublic NetworkBoundResource() {    result.setValue(Resource.<ResultType>loading(null));    final liveData<ResultType> dbSource = loadFromDb();    result.addSource(dbSource, new Observer<ResultType>() {        @OverrIDe        public voID onChanged(@Nullable ResultType newData) {            result.removeSource(dbSource);            if(shouldFetch(newData))            {                fetchFromNetwork(dbSource);            } else {                result.setValue(Resource.success(newData));            }        }    });}

这是错误消息:

java.lang.NoSuchMethodError: No virtual method iteratorWithAdditions()LandroID/arch/core/internal/SafeIterableMap$ListIterator; in class LandroID/arch/core/internal/SafeIterableMap; or its super classes (declaration of 'androID.arch.core.internal.SafeIterableMap' appears in /data/app/com.example.smostofi.upswing-XxPvhI837wneIYVTOrU2DW==/split_lib_dependencIEs_apk.apk:classes25.dex)                                                                            at androID.arch.lifecycle.liveData.dispatchingValue(liveData.java:145)                                                                            at androID.arch.lifecycle.liveData.setValue(liveData.java:293)                                                                            at androID.arch.lifecycle.mutablelivedata.setValue(mutablelivedata.java:33)                                                                            at com.example.smostofi.upswing.data.Util.NetworkBoundResource.<init>(NetworkBoundResource.java:44)

第一次在这里提问,希望我提供了足够的信息!
提前致谢!

解决方法:

您必须在Gradle中多次添加相同的依赖项.

我有一个同样的问题.原因是,我在Gradle中两次添加了Appcompact库,如下所示:

implementation 'com.androID.support:appcompat-v7:26.1.0'compile rootProject.ext.supportlibAppCompat

通过删除一个,问题得到解决.

请检查您的Gradle是否相同.希望能帮助到你 :)

总结

以上是内存溢出为你收集整理的android-LiveData’dispatchingValue’方法中的致命异常:无虚拟方法iteratorWithAdditions()全部内容,希望文章能够帮你解决android-LiveData’dispatchingValue’方法中的致命异常:无虚拟方法iteratorWithAdditions()所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1080338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存