Skip to content Skip to sidebar Skip to footer

How To Get Nested Child From Firebase Database Using Android?

I want to get list of all Allowed child from this type of JSON Tree: databaseRef.child('Users').child('Allowded').addValueEventListener(new ValueEventListener() { @Override public

Solution 1:

FirebaseDatabasedatabase= FirebaseDatabase.getInstance();
DatabaseReferenceuserRef= database.getReference("users").child(key).child("Alloweded");
ValueEventListenerpostListener=newValueEventListener() {
@OverridepublicvoidonDataChange(DataSnapshot dataSnapshot) {
    UseruserObj= dataSnapshot.getValue(User.class);

}

@OverridepublicvoidonCancelled(DatabaseError databaseError) {
    // Getting Post failed, log a message
    Log.w(TAG, "loadPost:onCancelled", databaseError.toException());
    // ...
}
};userRef.addValueEventListener(postListener);

User is your Model class which have lat, lng, name,no., profileUrl etc

Try this I hope it works fine.

Solution 2:

Firebase listeners fire for both the initial data and any changes.

If you're looking to synchronize the data in a collection, use ChildEventListener. If you're looking to synchronize a single object, use ValueEventListener. Note that in both cases you're not "getting" the data. You're synchronizing it, which means that the callback may be invoked multiple times: for the initial data and whenever the data gets updated.

FirebaseRef.child("message").addValueEventListener(new ValueEventListener() {
 @Override
public void onDataChange(DataSnapshot snapshot) {
  System.out.println(snapshot.getValue());  //prints "Do you have data? You'll 
    love Firebase."
 }
@Override
 public void onCancelled(DatabaseError databaseError) {        
}
 });

Solution 3:

databaseRef.child('Users').child('Allowded').addValueEventListener(newValueEventListener() {

@OverridepublicvoidonDataChange(DataSnapshot dataSnapshot) {

   for (DataSnapshot childDataSnapshot : dataSnapshot.getChildren()) {
        Log.d(TAG, "onDataChange: 1    " + childDataSnapshot.getKey());
            for (DataSnapshot childDataSnapshot2 : childDataSnapshot.getChildren()){
                Log.d(TAG, "onDataChange: 2    " + childDataSnapshot2.getKey());
            }
   }

  }
}

@OverridepublicvoidonCancelled(DatabaseError databaseError) {

} };);

Post a Comment for "How To Get Nested Child From Firebase Database Using Android?"