Android Firebase实时数据库:侦听具有特定值的更改

Android Firebase实时数据库:侦听具有特定值的更改,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我有以下数据库结构: Users Test ID:1 category:2 Test1 ID:2 category:3 Test3: ID:3 category:2 现在,我想听听对仅具有类别值2的子用户所做的任何更改 我如何在Firebase中做到这一点。正如David Ibrahim所说,您可以使用query来侦听值为2的类别的更改。你可以这样

我有以下数据库结构:

 Users
     Test
          ID:1
          category:2
     Test1
         ID:2
         category:3
     Test3: 
         ID:3 
         category:2
现在,我想听听对仅具有类别值2的子用户所做的任何更改


我如何在Firebase中做到这一点。

正如David Ibrahim所说,您可以使用query来侦听值为2的类别的更改。你可以这样做

Query queryCategory = FirebaseDatabase.getInstance().getReference().child("Users").orderByChild("category").equalTo(2);
        queryCategory.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

            }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });

为什么不查询所有用户的数据并为category=2的每个用户添加一个侦听器?