У меня есть запрос, который нужно сделать за один раз, и не хочу, чтобы он слушал, чтобы данные обновлялись при отправке ручного триггера.Firebase возвращает старый набор данных при использовании с addListenerForSingleValueEvent()
Так что мой запрос выглядит следующим образом:
var ref = this.instance.child('/user/manish/today/events')
.orderByChild('endDateTime')
.endAt(endEventTime)
.limitToLast(10)
.addListenerForSingleValueEvent(this.previousEventListeners);
this.previousEventListeners = new com.google.firebase.database.ValueEventListener({
onDataChange: (snapshot) => {
console.log("Value from native firebase access");
console.dump(this.testing(snapshot.getValue()));
let result = {
value : this.testing(snapshot.getValue()),
type : "ValueChanged"
};
console.dump(result);
},
onCancelled: (databaseError) => {
console.log(databaseError.getMessage());
hideActivtiyIndicator();
}
});
Она возвращает один и тот же набор данных, даже если новая запись добавляется, что соответствует критериям запроса.
Спасибо
Скорее всего, вы используете дисковое упорство. Постоянство диска Firebase и 'addListenerForSingleValueEvent()' не смешиваются хорошо. См. Http://stackoverflow.com/questions/34486417/firebase-offline-capabilities-and-addlistenerforsinglevalueevent/34487195#34487195 –