Firestore Query работает из консоли, но не из кода - PullRequest
0 голосов
/ 31 января 2020

Как вы можете видеть ниже, я получаю противоречивые результаты. Приветствуется вся помощь.

Запрос консоли Firebase

enter image description here

Результат запроса консоли Firebase

enter image description here

Код

        db.collection("Jobs")
                .whereEqualTo("stationA", "Clacton-on-Sea")
                .get()
                .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<QuerySnapshot> task) {
                        if (task.isSuccessful()) {
                            if (!task.getResult().isEmpty()) {
                                Log.d(tag, "Query snapshot not empty, size is " + task.getResult().size());
                            } else {
                                Log.d(tag, "Query snapshot empty");
                            }
                        } else {
                            Log.d(tag, "Error getting documents: ", task.getException());
                        }
                    }
                });

Журналы кодов

enter image description here

Ответы [ 2 ]

1 голос
/ 31 января 2020

Я нашел этот журнал и понял, что мой телефон вышел из Wi-Fi. Я исправил это, войдя в Wi-Fi, однако у меня есть сильное соединение 4g, которое не работало ни в одном приложении. Я исправил проблему 4g, перезапустив мой телефон

W/Firestore: (21.3.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Backend didn't respond within 10 seconds

    This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
0 голосов
/ 31 января 2020

Редактирование, но оставление ниже для справки

В вашем запросе вы ищете строчные буквы "s" в "Clacton-on-sea", и ваша база данных имеет верхний регистр case "S"


Эта кодовая метка показывает, как создать индекс Firestore из ошибки, отображаемой в Logcat .

Если вы когда-нибудь выполните запрос, у которого в данный момент нет существующего индекса, в Logcat будет отображен URL-адрес, который можно использовать для создания нового индекса. Обычно это нужно делать каждый раз, когда вы запускаете запрос, который упорядочивает данные или объединяет различные операторы (например, "==" и "<"). </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...