Выход из Firebase не работает должным образом. АндроидAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Выход из Firebase не работает должным образом. Андроид

Сообщение Anonymous »

Когда я выхожу из учетной записи и вхожу в другую учетную запись, я вхожу в предыдущую учетную запись. Когда я выхожу из системы, закрываю и открываю приложение, я могу правильно войти в другую учетную запись. В приложении есть автоматический вход. Интересно то, что когда я открываю и закрываю приложение, когда оно входит в неправильную учетную запись, оно входит в правильную учетную запись.
Приведем пример: когда вы входите в систему под пользователем 1 и выйдите из системы, а затем войдите под пользователем 2, появится пользователь 1. но когда я открываю и закрываю приложение, появляется пользователь 2.
Код выхода
suspend fun signOut() {
try {
auth.signOut()
oneTapClient.signOut().await()
} catch (e: Exception) {
e.printStackTrace()
if (e is CancellationException) throw e
}
}

Функция входа в систему по электронной почте
fun signInWithEmailAndPassword(email: String, password: String) {
firebase.auth.signInWithEmailAndPassword(email, password)
.addOnCompleteListener { task ->

if (task.isSuccessful) {
// Sign in success, update UI with the signed-in user's information
val user = Firebase.auth.currentUser
if (user!!.isEmailVerified) {
onSignInResult(
SignInResult(
data = UserData(
userId = user.uid,
userName = user.displayName,
profileImageUrl = user.photoUrl?.toString()
),
error = null
)
)
} else {
onSignInResult(SignInResult(data = null, error = "Please verify your email address"))
}
} else {
// If sign in fails, display a message to the user.
onSignInResult(SignInResult(data = null, error = task.exception?.message))
}
}
}

Функция входа в Google
suspend fun signInWithIntent(intent: Intent): SignInResult {
val credential = oneTapClient.getSignInCredentialFromIntent(intent)
val googleIdToken = credential.googleIdToken
val googleCredentials = GoogleAuthProvider.getCredential(googleIdToken, null)
return try {
val user = auth.signInWithCredential(googleCredentials).await().user
SignInResult(
data = user?.run {
UserData(
userId = uid,
userName = displayName,
profileImageUrl = photoUrl?.toString()
)
},
error = null
)
} catch (e: Exception) {
e.printStackTrace()
if (e is CancellationException) throw e
SignInResult(
data = null,
error = e.message
)
}
}


Подробнее здесь: https://stackoverflow.com/questions/787 ... ed-android
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»