【发布时间】:2018-07-24 23:14:34
【问题描述】:
我正在尝试将 DataSnapshot 对象转换为 HashMap,然后对其进行迭代以访问每个玩家的纬度经度和头像值。因为在此之后我将使用这些值在地图上渲染标记。
另一个问题是可以从查询中排除用户本身吗? 我的意思是可以写 mydb.child("map").child("players").notequalto(username).addValueEventList... 还是拉取数据后必须用代码排除?
mydb.child("map").child("players").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
HashMap<String,Object> players= new HashMap();
for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
players.put(childSnapshot.getKey(), childSnapshot.getValue());
}
Log.d("players",dataSnapshot.getValue().toString());
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
输出:
D/players: {lifesuxtr={lat=40.8901741, long=29.3772963, avatar =petyr}, lastpeony={lat=40.89, long=29.37, avatar=dino}}
【问题讨论】:
标签: java android firebase firebase-realtime-database