Как получить изменения в реальном времени в пожарном магазине? - PullRequest
0 голосов
/ 27 апреля 2019

У меня есть список чата (RecyclerView), который я извлекаю из Firestore и сортирую по отметке времени. Проблема, которая возникает, заключается в том, что список обновляется только при создании действия, в противном случае он бездействует.

Я также пытался запустить выборку кода в Onresume. Но он просто создает другой набор тех же элементов.

firebaseFirestore = FirebaseFirestore.getInstance();

            Query secondquery = firebaseFirestore.collection("Users").document(currentUser).collection("Chat").orderBy("timestamp",Query.Direction.DESCENDING);

            secondquery.addSnapshotListener((MainActivity.this), new EventListener<QuerySnapshot>() {
                @Override
                public void onEvent(QuerySnapshot documentSnapshots, FirebaseFirestoreException e) {

                    for (DocumentChange doc : documentSnapshots.getDocumentChanges()) {
                        if (doc.getType() == DocumentChange.Type.ADDED) {

                            String UserId=doc.getDocument().getId();

                            ChatList chatList = doc.getDocument().toObject(ChatList.class).withId(UserId);
                            chatLists.add(chatList);
                            chatListAdapter.notifyDataSetChanged();
                        }
                    }



                }
            });

Я ожидаю, что он будет обновлен, как только будет добавлен новый документ. Но он остается без дела, пока я не возобновлю деятельность

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