我已将我的android应用连接到firebase并启用了电子邮件和密码身份验证。我当前的数据库状态如下:
现在,我想为我拥有的所有用户添加一个额外的字段(键:“数字”),以使最终数据库看起来像这样:
所以请告诉我该怎么做?
更重要的一点是,我编写了代码,使我首先对其进行身份验证,如果他们的注册成功,则将用户带到新的活动,在收集密钥后,他们将输入此“密钥”,我应将其添加到用户节点在第二张图片中显示。
所以请告诉我该怎么做?
答案 0 :(得分:0)
要在Firebase实时数据库中写入一个值,您必须知道该值的完整路径。因此,在您的情况下,这意味着您首先必须从数据库加载所有数据,才能确定动态键(C76w3...
,FjsZ...
等)。
类似这样的东西:
DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot snapshot: dataSnapshot.getChildren()) {
snapshot.getRef().child("key").setValue("hisoka");
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
}