Как получить данные о ребенке в Firebase - PullRequest
0 голосов
/ 29 мая 2019

У меня есть древовидная структура базы данных, подобная этой:

enter image description here

Скажите, пожалуйста, как мне получить значение "username", если у меня есть значение "userid"

1 Ответ

1 голос
/ 29 мая 2019

как получить значение "username", если у меня есть значение "userid"

Чтобы решить эту проблему, используйте следующие строки кода:

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...