2017-04-26 89 views

回答

0

比方说,对于rated_users数据库引用是这个RatedUser

valueEventListener = new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for(DataSnapshot postSnapshot : dataSnapshot.getChildren()){ 
       String key = postSnapshot.getKey(); 
      } 
     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }; 



    RatedUser.addValueEventListener(valueEventListener); 
+0

..它给了我“rated_users”即使我的裁判是 “https:// **************/rated_users” – bhaskar

+0

已更新它,该键将包含所有推入ID。 –

+0

我已经自己回答了。 – bhaskar

0

使用下面的代码归档你的目标。

private DatabaseReference ref; 
     ref = FirebaseDatabase.getInstance().getReferenceFromUrl("https://xxxx.firebase.com/rated_users"); 

     ref.addValueEventListener(new ValueEventListener() { 
        @Override 
        public void onDataChange(DataSnapshot dataSnapshot) { 
         try { 
          String key = dataSnapshot.getKey(); 
String value = dataSnapshot.child("key").getValue(String.class); 
         }catch (Exception e) { 
          String valws = e.getMessage(); 
         } 
        } 

        @Override 
        public void onCancelled(DatabaseError databaseError) { 
        } 
       }); 

PS: 我做了一个快速样品它适用于我。 enter image description here

+0

这给了我“rated_users”中的键和值给null。 – bhaskar

+0

如果您不使用身份验证,请确保您已在数据库中设置了适当的“规则”。 – SurenSaluka

+0

{ “rules”:{ “.read”:“auth == null”, “.write”:“auth == null” } } – SurenSaluka

-1

我所做的只是增加了一个foreach循环:

for(DataSnapshot snapshot : dataSnapshot.getChildren()){ 
       Log.e("children" , snapshot.getKey()+""); 
      } 

这给了我这个没有工作的关键“4wJIGRCkYrZqFpb401hSmgHeBOI3”

相关问题