Я не могу получить данные пользователя из базы данных Firebase в Android? - PullRequest
0 голосов
/ 20 марта 2019

моя структура базы данных: rootNode-> node1-> Uid-> RandomId (который я получаю из метода push.getKey ()), затем мои данные -> (имя, адрес электронной почты, телефон)

projectName:
     SampleUsers
           Uid
              RandomKey1(i get this random key by push.getKey() method)
                         Name : User1
                         Email : user@email.com
                         Phone : +1234567890
              RandomKey2
                         Name : User1
                         Email : user@email.com
                         Phone : +1234567890 

Я хочу показать детали пользователя на странице его профиля при входе в систему. Но я не могу получить этот случайный ключ;

mUserRef =  firebaseDatabase.getReference("Users").child(mAuth.getCurrentUser().getUid());

1 Ответ

0 голосов
/ 20 марта 2019

Чтобы показать все дочерние узлы данного снимка, выполните итерацию по DataSnapshot.getChildren().Так, например:

DatabaseReference userRef =  firebaseDatabase.getReference("Users").child(mAuth.getCurrentUser().getUid());
userRef.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
            System.out.println(childSnapshot.getKey()); // the push ID
            System.out.println(childSnapshot.child("Name").getValue(String.class));
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...