Я хочу использовать проверку подлинности с помощью firebase в шаблоне MVVM, и я возился с ViewModels и LiveData, чтобы попытаться понять, как это работает.
Я изо всех сил пытаюсь понять, почему происходит следующее:
В моем хранилище Я пытаюсь войти в систему с помощью электронной почты и пароля и просто возвращаю String в зависимости от результата (в конце концов я изменю это на пользовательский объект)
fun loginUser (email: String, password: String): String {
firebaseAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener{ authTask ->
if (authTask.isSuccessful) {
randomString = "Signed in!!"
} else randomString = "Sign in failed!" // 2. This happens after randomString is returned
}
return randomString // 1. Returns this first, so returning default value
}
Так что я ожидал, что это вернет либо "Signed in !!" или "Войти не удалось!" но randomString является значением по умолчанию и обновляется , после оно возвращается ..