Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Firebase检索实时数据_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Android Firebase检索实时数据

Android Firebase检索实时数据,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我试图从数据库中获取数据 代码: mDatabaseUsers=FirebaseDatabase.getInstance().getReference().child(“用户”)mDatabaseUsers.orderByChild(“名称”).startAt(“m”); mDatabaseUsers.keepSynced(true);mDatabaseUsers.addValueEventListener(新的ValueEventListener(){ @凌驾 公共void onDataCha

我试图从数据库中获取数据

代码:

mDatabaseUsers=FirebaseDatabase.getInstance().getReference().child(“用户”)mDatabaseUsers.orderByChild(“名称”).startAt(“m”);
mDatabaseUsers.keepSynced(true);mDatabaseUsers.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
Map Map=dataSnapshot.getValue(Map.class);
String name=map.get(“name”);
Toast.makeText(AddFriendActivity.this,nick.toString(),Toast.LENGTH\u SHORT.show();
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
我想得到所有的用户与字母m

它是如何工作的? 谢谢大家!


对Firebase数据库执行查询时,可能会有多个结果。因此,快照包含这些结果的列表。即使只有一个结果,快照也将包含一个结果列表

因此,您需要在
dataSnapshot
中循环结果:

mDatabaseUsers.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot userSnapshot: dataSnapshot.getChildren()) {
            System.out.println(userSnapshot.child("name").getValue(String.class));
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException(); // don't ignore errors
    }
});

另请参见中的简要示例。

谢谢!我还有一个问题。如果名称不存在,如何检查数据库以查看?因为我的手机坏了!这个话题以前已经讨论过好几次了。请在此处查看一些最重要的结果:
mDatabaseUsers.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot userSnapshot: dataSnapshot.getChildren()) {
            System.out.println(userSnapshot.child("name").getValue(String.class));
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException(); // don't ignore errors
    }
});