2017-06-23 12 views
0

現在Firebaseパスワード認証を使用しています。これは私のログイン方法です。Firebase Authは、ユーザが間違ったパスワードを入力したかどうかを確認します。

私はelseブロックステートメントを使用して、ログインが成功していないが、ユーザーに具体的に何が間違っているかを知らせるわけではありません。ユーザーが間違ったパスワードを入力したかどうかを確認するにはどうすればよいですか?

private void signIn(String email, String password, final View view) { 
    Log.d(TAG, "signIn:" + email); 
    if (!validateForm()) { 
     return; 
    } 
    showProgress(); 
    // [START sign_in_with_email] 
    fLogInAuth.signInWithEmailAndPassword(email, password) 
      .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { 
       @Override 
       public void onComplete(@NonNull Task<AuthResult> task) { 
        if(task.isSuccessful()) { 
         progressDialog.dismiss(); 
         FirebaseUser currUser = fLogInAuth.getCurrentUser(); 
         establishUI(currUser); 
        } else { 
         progressDialog.dismiss(); 
         establishUI(null); 
         Snackbar.make(view, "Unable to login, Please try again in a few moments",Snackbar.LENGTH_LONG).show(); 
        } 

       } 
      }); 
} 
+1

ログイン時に何が問題なのかを示すために、アプリケーションのセキュリティが悪いことがあります。これは、ハッカーに、より効果的にアカウントに侵入しようとする方法を伝えます。問題についてはあいまいである方が良いです。 –

+0

@DougStevenson私はそれについて考えましたが、ユーザーがパスワードをリセットしたいときはいつでも小さなTextViewを表示したかっただけです。とにかくありがとう! – GGWP

答えて

0

エラーメッセージを取得するためにonComplete()task.getException().getLocalizedMessage()を使用してください。

関連する問題