Here is an example how i solve this problem .[TESTED AND WORKING]
viewModel.getLoginResponse().observe(getViewLifecycleOwner(), new Observer<String>() {
@Override
public void onChanged(String response) {
if(getViewLifecycleOwner().getLifecycle().getCurrentState()== Lifecycle.State.RESUMED){
// your code here ...
}
}
});