Android 使用特定ID从Firebase检索数据

Android 使用特定ID从Firebase检索数据,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我有一个用户ID,我想从firebase中取他的名字。所以,我尝试使用orderByKey()方法来查找某个用户,然后从他的个人资料中获取信息。但是出了点问题 reference = FirebaseDatabase.getInstance().getReference("Users"); Query query = reference.orderByKey().equalTo(task.author_id); query.addListenerForSingleValueEve

我有一个用户ID,我想从firebase中取他的名字。所以,我尝试使用orderByKey()方法来查找某个用户,然后从他的个人资料中获取信息。但是出了点问题

reference = FirebaseDatabase.getInstance().getReference("Users");
    Query query = reference.orderByKey().equalTo(task.author_id);
    query.addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            fullName = dataSnapshot.getValue(User.class).getFullName();
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });

在这种情况下,如果您已经知道到该节点的特定路径,则不需要查询。只需直接添加侦听器

reference = FirebaseDatabase.getInstance().getReference("Users");
reference.child(task.author_id).addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        fullName = dataSnapshot.getValue(User.class).getFullName();
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {

    }
});