Я использую архитектуру MVVM, чтобы проверить, вошел ли пользователь анонимно. В моем классе репозитория у меня есть это поле:
val isUserAnonymous = FirebaseAuth.getInstance().currentUser?.isAnonymous
В классе ViewModel у меня есть:
val isUserAnonymous = repository.isUserAnonymous
И в своей деятельности я использую что-то вроде этого:
R.id.sign_out_button -> {
if (mainViewModel.isUserAnonymous!!) {
Log.d("TAG", "isUserAnonymous: " + isUserAnonymous) //False
}
}
Сразу после того, как я успешно вошел в систему и нажал кнопку выдачи, isUserAnonymous
оценивается как false . Однако, если я использую:
R.id.sign_out_button -> {
if (FirebaseAuth.getInstance().currentUser!!.isAnonymous) {
Log.d("TAG", "isUserAnonymous: " + isUserAnonymous) //True
}
}
isAnonymous
оценивается как true . Зачем? Как мне получить значение true, если я использую код в своем классе репозитория?