在没有实时数据的情况下使用ViewModel是否很好

时间:2018-05-23 08:14:04

标签: android android-architecture-components android-mvvm

我在LiveData类中使用AndroidViewModel我需要等待响应,但在某些情况下,我需要检查来自本地shared preference的某些值,其中赢了“阻止任何线程。

对于这些情况,我没有使用LiveData。这就是我在activity class中所做的事情。

 homeViewModel.sendTokenToServer().observe(this, isFCMSendToServer -> {
        Toast.makeText(this, "FCM Token Observer called", Toast.LENGTH_SHORT).show();
 });


//Without Live Data

if(homeViewModel.isUpgradeAvailable()){
     displayAlertMessage();
}

我想知道上述方法是否正常,或者我们必须在LiveData

中为每个方法使用ViewModel或其他一些观察者

1 个答案:

答案 0 :(得分:5)

AFAIK ViewModelLiveData没有紧密联系。因此,您没有义务使用任何观察员。例如,在this示例应用中,ViewModel用于通过方向更改来保留一些数字。因此ViewModel充当容器(类似于无头片段),您可以在其中存储要通过方向更改保留的数据。