gpt4 book ai didi

Android Firebase 实时数据库替换数据而不是添加新数据

转载 作者:搜寻专家 更新时间:2023-11-01 07:47:05 24 4
gpt4 key购买 nike

我正在尝试将数据插入 Firebase 实时数据库。我的应用程序的逻辑是在用户注册时在数据库的用户列下创建一个包含用户名和密码的新字段。

该应用在注册时需要电子邮件、用户名和密码。我正在使用 Firebase Auth 来执行此操作。当我运行该应用程序时,我可以成功注册并将值插入数据库,但是每当新用户注册而不是创建新用户时,数据库中的值就会被替换。如果我做错了什么,请帮忙。这是我的代码。

firebaseAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
UserInformation userInformation = new UserInformation(username,password);
//checking if success
if(task.isSuccessful()){

databaseReference.child("users").setValue(userInformation);
Toast.makeText(MainActivity.this,"Successfully registered",Toast.LENGTH_LONG).show();
finish();
startActivity(new Intent(getApplicationContext(), ProfileActivity.class));
}else{
//display some message here
Toast.makeText(MainActivity.this,"Registration Error",Toast.LENGTH_LONG).show();
}
progressDialog.dismiss();
}
});

最佳答案

databaseReference.child("users").setValue(userInformation)

这将替换现有数据。如果你想将值添加为新的 child ,你将需要使用 push() ,这将生成一个唯一的 id,然后插入新数据。试试下面的代码。

databaseReference.child("users").push().setValue(userInformation)

关于Android Firebase 实时数据库替换数据而不是添加新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41773559/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com