2017-10-05 79 views
0

我想讀取firebase數據庫中的子節點的值。問題是這些子節點將在運行時添加。所以,我現在不知道孩子的名字。在firebase中讀取動態兒童的值android

是否可以從這些子節點讀取公共值?該結構與圖像相同。藍色是動態子節點,紅色是要讀取的值。

Database Structure

+0

你可以顯示你已經有多遠的代碼了嗎?這會讓你更容易找到缺失的部分。 –

回答

1

如果我明白你的問題正確,藍兒童被動態添加,並且希望在運行時,讓他們的名字。請嘗試以下代碼:

DatabaseReference databaseReference=FirebaseDatabase.getInstance().getReference().child("data") 
        .child("idsToTrack").child(data_unique_id); 

      databaseReference.addChildEventListener(new ChildEventListener() { 

         @Override 
         public void onChildAdded(DataSnapshot dataSnapshot, String s) { 
          String childName=dataSnapshot.child("name").getValue(String.class); 

         } 

         @Override 
         public void onChildChanged(DataSnapshot dataSnapshot, String s) { 

         } 

         @Override 
         public void onChildRemoved(DataSnapshot dataSnapshot) { 

         } 

         @Override 
         public void onChildMoved(DataSnapshot dataSnapshot, String s) { 

         } 

         @Override 
         public void onCancelled(DatabaseError databaseError) { 

         } 
        }); 

此監聽器爲您提供了有關有用節點下兒童流量的大量信息。在這個例子中,你會得到添加的孩子的名字。