Невозможно получить все документы из коллекции root - Firestore Android - PullRequest
0 голосов
/ 13 июля 2020

Я использую Firestore и пытаюсь получить все документы из коллекции root. Странное поведение, получаются только те документы, которые были добавлены вручную. Я пробовал это , это и многие другие подобные решения, но не получил все документы.

Вот моя структура Firebase

enter image description here

One more thing which is noticeable, the 1st document under users collection which had I added by code looks italic and the other one looks normal & I'm only getting 2nd one in the logcat which is added manually.

Here's my code

FirebaseFirestore.getInstance().collection("users")
                .get()
                .addOnCompleteListener(new OnCompleteListener() {
                    @Override
                    public void onComplete(@NonNull Task task) {
                        if (task.isSuccessful()) {
                            for (QueryDocumentSnapshot document : task.getResult()) {
                                Log.e("===>>>>", document.getId() + " => " + document.getData());
                            }
                        } else {
                            Log.d("===>>>>", "Error getting documents: ", task.getException());
                        }
                    }
                });

Here's my logcat

введите описание изображения здесь

Каков правильный способ получить все до c, неважно, это должно быть добавлено кодом или вручную!

Ответы [ 2 ]

1 голос
/ 13 июля 2020

1-й документ из коллекции пользователей, который я добавил с помощью кода, выглядит itali c

Это означает, что настоящего документа там нет. Что вы сделали, так это создали документ в подколлекции под идентификатором документа, не создавая также этот документ. Это не ошибка, но вы должны знать, что это также не настоящий документ и не будет отображаться в запросах. Он просто показан там, чтобы вы могли найти вложенную подколлекцию в консоли.

0 голосов
/ 13 июля 2020

данные пусты, братан, поэтому у вас возникла эта проблема. хорошо, послушайте, я поделюсь блоком кода, может это поможет вам, когда у вас есть данные в коллекции firestore

 FirebaseFirestore db = FirebaseFirestore.getInstance();
        db.collection("matches")
                .get()
                .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<QuerySnapshot> task) {
                        if (task.isSuccessful()) {

                            for (QueryDocumentSnapshot document : task.getResult()) {
                                Log.d("", document.getId() + " => " + document.getData());

                                String actualPlayers = document.get("actualPlayers").toString();
                                String city = document.get("city").toString();
                             String   cooardinates = document.get("coordinates").toString();

 } else {
                            kProgressHUD.dismiss();

                            Log.d("", "Error getting documents: ", task.getException());

                        }

                    }
                });


    }

...