[英]Firebase email/password authentication never completed
我在我的 Android 应用程序中实现了 Firebase 提供的电子邮件/密码登录方法。 它工作正常。 但是今天由于某些我不知道的原因它不起作用。 我没有更改与我的登录活动相关的任何代码,也没有更改 Firebase 控制台中的设置。
private void signIn(String email, String password) {
Log.d(TAG, "signIn:" + email);
if (!validateForm()) {
return;
}
showProgressDialog();
// [START sign_in_with_email]
firebaseAuth.signInWithEmailAndPassword(email, password)
.addOnCompleteListener(this, task -> {
if (task.isSuccessful()) {
// Sign in success, update UI with the signed-in user's information
Log.d(TAG, "signInWithEmail:success");
FirebaseUser user = firebaseAuth.getCurrentUser();
updateUI(user);
} else {
// If sign in fails, display a message to the user.
Log.w(TAG, "signInWithEmail:failure", task.getException());
Toast.makeText(LoginActivity.this, "Authentication failed.",
Toast.LENGTH_SHORT).show();
}
hideProgressDialog();
});
// [END sign_in_with_email]
}
在 Logcat 中,它显示程序确实到达了登录方法,但不知何故身份验证过程从未完成(日志从未显示 signInWithEmail:success 或 signInWithEmail:failure)。
我确实尝试了其他解决方案,例如将 addOnCompleteListener 更改为 addOnSuccessListener 但没有任何改变。 Firebase 服务目前无法正常工作吗? 还是我的代码有问题? 我完全迷失了。 我很感激你想分享的任何想法。
你退出了吗? 尝试先注销,然后它会登录。
尝试在您的 onCreate 方法中执行firebaseAuth.signOut()
。 它可能会有所帮助。
但此日志指的是方法 (SignIn) 而不是 firebaseAuth 方法,请从 Tools->Firebase -> Authentication -> Connect to Firebase(如果未连接)检查您与 Firebase 的连接
我有另一个任务 FirebaseAuth.getInstance().currentUser.getIdToken(true)。 它从未完成,因为我从主线程调用它。 当我从后台线程调用时 - 它完成了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.