如何为firebase数据库中的所有子数据设置值?

Ank*_*kit 2 android firebase firebase-realtime-database

我需要立即将所有用户的 SubmitCheck 设置为“true”。

我在这个项目中有很多用户。是否可以为用户设置值“true”。

在此输入图像描述

Ale*_*amo 5

是的,您可以使用以下代码实现此目的:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference usersRef = rootRef.child("users");
ValueEventListener eventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        String trueValue = "true";
        for(DataSnapshot ds : dataSnapshot.getChildren()) {
            ds.child("SubmitCheck").getRef().setValue(trueValue);
        }
    }

    @Override
    public void onCancelled(DatabaseError error) {
        Log.d("TAG", error.getMessage()); //Never ignore potential errors!
    }
};
usersRef.addListenerForSingleValueEvent(eventListener);
Run Code Online (Sandbox Code Playgroud)

在您的代码中看到您正在使用 Stringtrue而不是 boolean true。如果您要使用数据库中的布尔值更改字符串的值,则还需要更改以下行:

boolean bool = true;
ds.child("SubmitCheck").setValue(bool);
Run Code Online (Sandbox Code Playgroud)