如何在Firebase中获取孩子的数据

时间:2019-05-29 11:18:14

标签: java android firebase firebase-realtime-database

我的数据库树结构如下:

enter image description here

请告诉我,如果我具有“ userid”的值,如何获得“ username”的值

1 个答案:

答案 0 :(得分:1)

  

如果我具有“ userid”的值,如何获得“ username”的值

要解决此问题,请使用以下代码行:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference uidRef = rootRef.child("users").child(uid);
ValueEventListener valueEventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        String username = dataSnapshot.child("username").getValue(String.class);
        Log.d(TAG, username);
    }

    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {
        Log.d(TAG, databaseError.getMessage()); //Don't ignore errors!
    }
};
uidRef.addListenerForSingleValueEvent(valueEventListener);

logcat中的输出将是:

hisoka