Как назначить класс данным, полученным из Firestore? - PullRequest
0 голосов
/ 22 марта 2019

Вот код, в котором я получаю данные из Firestore.

    private FirebaseFirestore db = FirebaseFirestore.getInstance();
    private DocumentReference dataRef = db.collection("users").document(currentUser);

    dataRef.get().addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
            @Override
            public void onSuccess(DocumentSnapshot documentSnapshot) {
                if(documentSnapshot.exists()){
                    navUserName.setText(documentSnapshot.getString("fullname"));
                    navGmail.setText(documentSnapshot.getString("email"));
                } else {
                    Log.i("current user data: ","Not Found");
                }
            }
        });

Я хочу сначала назначить эти данные классу user user, а затем получить их из класса user object.Как я могу это сделать?

1 Ответ

1 голос
/ 23 марта 2019

Согласно вашему комментарию, если вы добавляете данные в базу данных с помощью объекта User, чтобы получить данные обратно, вы можете сопоставить объект DocumentSnapshot с объектом User, используя следующие строки кода :

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DocumentReference dataRef = db.collection("users").document(uid);
dataRef.get().addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
    @Override
    public void onSuccess(DocumentSnapshot documentSnapshot) {
        User user = documentSnapshot.toObject(User.class);
        Log.d(TAG, user.getFullname());
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...