簡體   English   中英

android中的firebase中的身份驗證錯誤

[英]error with authentication in firebase in android

我正在嘗試使用Firebase登錄來制作一個應用程序。 我的應用程序可以在手機上正常運行,但是我無法登錄。 由於我的應用程序沒有錯誤,並且不會崩潰,因此我試圖在firebase中找出問題,但找不到問題。 有人能幫我嗎?

private AutoCompleteTextView mEmailView;
private EditText mPasswordView;
private Button mBtn;

private FirebaseAuth mAuth;
private FirebaseAuth.AuthStateListener mAuthListener;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);

    mAuth = FirebaseAuth.getInstance();
    mAuthListener = new FirebaseAuth.AuthStateListener() {
        @Override
        public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {

            if(mAuth.getInstance().getCurrentUser() != null) {
                startActivity(new Intent(LoginActivity.this, calendario.class));
            }
        }
    };

    mEmailView = (AutoCompleteTextView) findViewById(R.id.email);
    mBtn = (Button) findViewById(R.id.button2);
    mBtn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            startSignIn();
        }
    });
    mPasswordView = (EditText) findViewById(R.id.password);
}

@Override
protected void onStart(){
    super.onStart();
    mAuth.addAuthStateListener(mAuthListener);

}


private void startSignIn() {

    // Store values at the time of the login attempt.
    String email = mEmailView.getText().toString();
    String password = mPasswordView.getText().toString();



    if (TextUtils.isEmpty(password) || TextUtils.isEmpty(email)) {
        Toast.makeText(LoginActivity.this, "Insira email ou senha", Toast.LENGTH_LONG).show();
    } else {

        mAuth.signInWithEmailAndPassword(email,password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
            @Override
            public void onComplete(@NonNull Task<AuthResult> task) {
                if (!task.isSuccessful()) {
                    Toast.makeText(LoginActivity.this,"Erro com senha ou email",Toast.LENGTH_LONG).show();
                }
            }
        });

    }
}

我在論壇上搜索了很多東西,但沒有找到類似的東西。

可能是該用戶不存在,因此如果使用mAuth.createUserWithEmailAndPassword(email, password)任務不成功,則必須創建一個用戶

密碼至少應為6個字符。

請在if(!task.isSuccessful){里面寫:

Toast.makeText(LoginActivity.this, "Failed to sign in: "+task.getException().getMessage(), Toast.LENGTH_SHORT).show();

知道為什么登錄不起作用。

並刪除此:

Toast.makeText(LoginActivity.this,"Erro com senha ou email",Toast.LENGTH_LONG).show();

多謝你們。 我去了控制台API,直到我搜索了我的項目之前,我才意識到Google用API創建了一個項目(該項目在這里像是不可見的)。 我啟用了所有API,並轉到了工具箱並啟用了它,現在我的登錄正常了,非常感謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM