我在使用Proguard时遇到了ViewModel组件无法正常工作的问题。为了防止NoSuchMethodException引起崩溃,我已经添加了以下内容:
-keep class com....SlideshowViewModel {*;}
然而,在活动中的观察者没有收到任何数据。在启用Proguard之前,这是正常工作的,因此我知道Proguard是原因,只是不知道为什么(我是一个初学者)。我需要添加什么规则才能使可观察对象正常工作?
我在我的ViewModel(Kotlin)中有以下内容:
在日志中我收到了以下内容: D/SlideshowViewModel: 设置下一张图片:0/18 但是在onChanged Observable中没有任何触发。
-keep class com....SlideshowViewModel {*;}
然而,在活动中的观察者没有收到任何数据。在启用Proguard之前,这是正常工作的,因此我知道Proguard是原因,只是不知道为什么(我是一个初学者)。我需要添加什么规则才能使可观察对象正常工作?
我在我的ViewModel(Kotlin)中有以下内容:
val currentItem = MediatorLiveData<MediaItem>()
....later...
Timber.d("Setting next image: " + position + " out of " + mediaItemList.size)
currentItem.value = mediaItemList[position]
以及Activity(Java)
viewModel.getCurrentItem().observe(this, new Observer<MediaItem>() {
@Override
public void onChanged(@Nullable final MediaItem mediaItem) {
Timber.d("Activity received new item");
}
});
在日志中我收到了以下内容: D/SlideshowViewModel: 设置下一张图片:0/18 但是在onChanged Observable中没有任何触发。