首页 > 解决方案 > 使用电子邮件和密码创建用户并将数据放入数据库 Fire base

问题描述

我想使用函数 createUserWithEmailAndPassword 创建用户,然后将该用户的数据放入我的数据库中,但它不起作用.. 用户被添加到我在 firebase 中的身份验证选项卡中,但不在我的数据库中。我也没有收到错误。

btn_reg.setOnClickListener(new View.OnClickListener() {
              @Override `enter code here`
              public void onClick(View v) {
                  String n=name.getText().toString().trim();
                  String u=username.getText().toString().trim();
                  String e=email.getText().toString().trim();
                  String ph=phone.getText().toString().trim();
                  String p=password.getText().toString().trim();

                  auth.createUserWithEmailAndPassword(e,p).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
                      @Override
                      public void onComplete(@NonNull Task<AuthResult> task) {

                         if(task.isSuccessful()){
                             UserClass u=new UserClass(name,username,email,phone,password);
                             FirebaseDatabase.getInstance().getReference("Users")
                                     .child(FirebaseAuth.getInstance().getCurrentUser().getUid())
                                     .setValue(u).addOnCompleteListener(new OnCompleteListener<Void>() {

                 @Override
                 public void onComplete(@NonNull Task<Void> task) {
                if(task.isSuccessful()){
    Toast.makeText(SignUp.this, "User Created ", Toast.LENGTH_SHORT).show();
}
                else{
                    Toast.makeText(SignUp.this, task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                }
                                 }
                             });
                         }
                         else{
                             Toast.makeText(SignUp.this,task.getException().getMessage(), 
                              Toast.LENGTH_SHORT).show();
                         }
                      }
                  });
              }
          });


标签: firebaseandroid-studiofirebase-realtime-database

解决方案


我不确定,但我相信你的道路是错误的。据我所知,它必须是:

FirebaseDatabase.getInstance().getReference.child("Users").child(FirebaseAuth.getInstance().getCurrentUser().getUid())....

推荐阅读