Почему этот ChildEventListener не считывает данные с узла firebase?

У меня есть запрос к узлу firebase с ChildEventListener, показанным в ссылке изображения введите описание изображения здесь

теперь, когда я запускаю этот код

mMessageRef.child(ScrollAppUtils.firebaseId).child(child.key).orderByKey().limitToLast(1).addChildEventListener(object : ChildEventListener { override fun onCancelled(p0: DatabaseError?) {} override fun onChildMoved(p0: DataSnapshot?, p1: String?) {} override fun onChildChanged(p0: DataSnapshot?, p1: String?) {} override fun onChildAdded(p0: DataSnapshot?, p1: String?) { Logger.d("inside onChild Added") if (p0!!.hasChildren()) { var lastMessage = p0.getValue(MessagesTwo::class.java) var dialog = DefaultDialog(child.key, user.metaData.profileImage, user.metaData.name, arrayListUser, lastMessage, 2) if (!listDialog.contains(dialog)) { listDialog.add(dialog) Logger.d(listDialog.size) dialogListAdapter.setItems(listDialog) dialogListAdapter.notifyDataSetChanged() } else { Logger.d("inside updateItemByID : ") Logger.json(Gson().toJson(dialog)) dialogListAdapter.updateItemById(dialog) dialogListAdapter.notifyDataSetChanged() } } } override fun onChildRemoved(p0: DataSnapshot?) {} }) 

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

Метод onChildAdded вызывается для каждого дочернего элемента не местоположения (или запроса). Если нет соответствующих дочерних узлов, onChildAdded не будет вызываться.

Если вы хотите обнаружить ситуацию, когда нет дочерних узлов, вам также понадобится использовать ValueEventListener .

Также см:

  • Firebase onChildAdded не вызывается, когда нет данных (которые этот вопрос действительно дублирует)
  • Могу ли я определить, не будет ли запрос НЕ находить детей со значениями в пределах указанного диапазона?
  • Что произойдет, если URL-адрес firebase не существует, и мы пытаемся добавить к нему слушателя?
  • Firebase queryOrderedbyChild не возвращает значение Null
Intereting Posts
Невозможно создать класс объектов Android Room. android.support.v4.app.FragmentManager не может быть предоставлен без @ Provides- или @ Produces-аннотированного метода Ошибка Null Pointer в ссылке RecyclerView в фрагменте с использованием Kotlin Система не может найти файл, указанный в Kotlin У меня есть два метода расширения Kotlin для одного и того же класса, но с разными генерическими сигнатурами и компилятор жалуется Общие типы и полиморфизм Kotlin: Неопределенность разрешения перегрузки в Eclipse, но не в IntelliJ Какой модификатор доступа для тестовых вспомогательных методов? В Kotlin, как я могу создать экземпляр класса с использованием собственного параметра java? Я сейчас разрабатываю приложение для Android с Kotlin, но произошла ошибка: CompilationException: не удалось встроить метод в 'readText' Обработчик исключений не работает с `spring-boot-starter-data-rest` Не удается выполнить единичный тест в Kotlin (ExecutionException, Aapt2Exception) Отсутствующие или конфликтующие зависимости для Anko floatingActionButton Не удается получить SupportMapFragment, чтобы вернуть что-либо. Android: запустите 4 async-задачи (которые работают с Rest API), подождите и начните еще одно действие после выполнения всех задач