Предположим, у меня есть база данных базы данных Firebase, /foo
, у которой сейчас есть пять детей. Я ожидаю, что в ближайшие несколько минут будет добавлено больше детей. У меня есть прослушиватель дочерних событий в этой ссылке базы данных, и я получаю пять вызовов обратно до onChildAdded()
сразу же, когда я добавляю слушателя, как ожидалось.Как узнать, когда я последний раз звонил в ChildEventListener.onChildAdded(), пока?
Я собираюсь оставить слушателя до тех пор, пока мое приложение Android работает для обработки новых детей, но пока, скажем, при запуске приложения, меня действительно интересует, когда у меня есть последний существующих пяти детей.
Как это сделать?
Я не хочу добавлять ValueEventListener
, а также ChildEventListener
, так как это только удваивается при передаче данных. Похоже, что где-то в API должно быть Task
, с которого я могу получить обратный вызов после завершения, но я не могу его найти.
Возможно, используйте [это?] (Https://www.firebase.com/docs/java-api/javadoc/com/firebase/client/DataSnapshot.html#getChildrenCount--). Затем держите под рукой счетчик каждый раз, когда добавлен ребенок. –
«... так как это просто удваивается при передаче данных». Вы в этом уверены? – cartant