当前位置: 代码迷 >> Android >> Firebase对象firebaseAuth.SigninwithemailandPassword给出nullpointerException?
  详细解决方案

Firebase对象firebaseAuth.SigninwithemailandPassword给出nullpointerException?

热度:76   发布时间:2023-08-04 12:36:25.0

我正在开发酒店管理应用程序。 我最近创建了管理员ID和密码登录页面,并为我的项目使用了Firebase数据库。 当我单击登录按钮firebaseAuth.signinwithemailandpassword或firwebaseAuth.createuserwithemailandpassword抛出nullpointer异常。 我一直在想如何解决这个问题,但无法找到解决方案。 请帮助。 我的代码如下:

 private FirebaseAuth firebaseAuth;

in OncreateMethod : 

 firebaseAuth = FirebaseAuth.getInstance();


public void onClick(View view)
    {
        validate();

        validateUser();
    }

    public void validate()
    {

        Adminid = AdminID.getText().toString();
        Pass=Password.getText().toString();

       if(Pass.isEmpty() || Pass.contains(" "))
       {
           Password.setError("Invalid Password");
       }
       else if(Adminid.isEmpty() || Adminid.contains(" ") || !Adminid.contains("@"))
       {
           AdminID.setError("Invalid Admin ID");
       }
       else
       {
           validateUser();
       }
    }

public void validateUser()

    {

        verifylogin.setMessage("Verifying, Please Wait");
        verifylogin.show();
         firebaseAuth.createUserWithEmailAndPassword(Adminid,Pass).addOnCompleteListener(LoginActivity.this,new OnCompleteListener<AuthResult>() {
            @Override
            public void onComplete(@NonNull Task<AuthResult> task)
            {
                if(task.isSuccessful())
                {
                    verifylogin.dismiss();
                    Toast.makeText(LoginActivity.this,"Login Successful",Toast.LENGTH_LONG).show();
                    FirebaseUser user = firebaseAuth.getCurrentUser();
                }
                else
                {
                    Toast.makeText(LoginActivity.this,"Login Failed",Toast.LENGTH_LONG).show();
                }
            }
        });
    }

欢迎使用StackOverflow,我看到了您的代码,但没有发现任何可见的错误。 因此,我建议您在Firebase控制台中检查您的项目是否启用了“电子邮件/密码”,该方法位于“身份验证”>“访问方法”中,您可以验证一下,如果不启用,请仅单击铅笔进行编辑。 请告诉我这是否有效。

PS在onClick方法中,您调用validateUser();。 和validate()但内部的validate()也可以称为(validateUser();)。

  相关解决方案