Как я могу получить данные о зарегистрированных пользователях, таких как контакт, электронная почта, имя и т. Д. - PullRequest
1 голос
/ 17 марта 2020

Это мой код, и я не получаю ожидаемого вывода.

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
    String userKey = user.getUid();
    Log.d("UID : ",""+userKey);
    DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("users").child(userKey);
    databaseReference.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            Log.v("temp","temp"); //for debugging
            for(DataSnapshot ds : dataSnapshot.getChildren())
            {
                Log.v("Contact : ",""+ds.child("contact").getValue());
            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });

This is firebase database structure

1 Ответ

1 голос
/ 17 марта 2020

Вы показываете schmea Cloud Firestore, но используете код, который получает данные из базы данных в реальном времени. Чтобы решить эту проблему, вы должны использовать следующий код:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
CollectionReference usersRef = rootRef.collection("users");
DocumentReference uidRef = usersRef.document(uid);
uidRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
        if (task.isSuccessful()) {
            DocumentSnapshot document = task.getResult();
            if (document.exists()) {
                String firstname = document.getString("firstname");
                String lastname = document.getString("lastname");
                String monthlybudget = document.getString("monthlybudget");
                String emailid = document.getString("emailID");
                String contact = document.getString("contact");
                Log.d(TAG, firstname + "/" + lastname + "/" + monthlybudget + "/" + emailid + "/" + contact);
            }
        }
    }
});

Результат в вашем logcat будет:

Vicky/Gupta/2500/vicky@gmail.com/8879835947
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...