我正在为我的应用程序设置用户注册,并且注册本身运行良好。就像电子邮件和密码保存在我的 Firebase 身份验证部分一样,但我正在尝试使其同时存储用户名。我拥有的代码对我来说似乎很好,但它不会在我的 Firebase 中创建一个包含任何已保存用户信息(如用户名)的数据库。
这是我用来注册用户的代码。
firebaseAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
//start profile activity here
User user = new User(username, email);
FirebaseDatabase.getInstance().getReference("Users")
.child(FirebaseAuth.getInstance().getCurrentUser().getUid())
.setValue(user).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(RegisterActivity.this, "Registration successful.", Toast.LENGTH_SHORT).show();
startActivity(new Intent(RegisterActivity.this, HomePage.class ));
} else {
Toast.makeText(RegisterActivity.this, "Database not created", Toast.LENGTH_SHORT).show();
}
}
});
} else {
Toast.makeText(RegisterActivity.this, "Registration not successful, please try again.", Toast.LENGTH_SHORT).show();
progressDialog.hide();
}
}
});
当我尝试注册一个帐户时,它说“未创建数据库”,所以我知道 task.isSuccessful() 不是真的,我不确定为什么会这样。
有什么帮助吗?
慕运维8079593
犯罪嫌疑人X
相关分类