我已将 Android 应用连接到 Firebase 并启用了电子邮件和密码身份验证。我当前的数据库状态如下:
现在我想为我拥有的所有用户添加一个额外的字段(键:“number”),以便我的最终数据库如下所示:
那么请告诉我该怎么做?
更重要的是,我编写了代码,以便首先对它们进行身份验证,如果它们注册成功,那么我将用户带到新的 Activity,他们将在收集 key 后输入此“ key ”,我应该将其添加到用户节点,如下所示如第二张图所示。
那么请告诉我该怎么做?
最佳答案
要在 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();
}
}
关于java - 如何为 firebase 中的现有子项添加新的 "key-value"对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56330296/