Я включил setPersistenceEnabled(true)
, то что-то случилось по ошибке, и узел, который, как предполагается, теперь имеет детей, нет;Firebase: Как принудительно извлекать новые данные для одного конкретного узла.
Узел был в форме:
Nodes : {
concernedNode : {
child : "data",
child2 : "data"
}
}
После arror, то concernedNode изменен:
concernedNode : true
И в Java, я получаю эти данные следующим образом:
concernedNodePojo pojo = dataSnapshot.getValue(concernedNodePojo.class);
Как вы можете видеть, если это связаноNode теперь является логическим, это порождает e xception где concernedNodePojo не может быть преобразован в булево.
Теперь проблема в том, что это уже в кеше, если setPersistenceEnabled(false)
, все будет нормально работать, но если setPersistenceEnabled(true)
, приложение раздавит, потому что нет возможности удалить автономные данные.
Я пробовал setPersistenceEnabled(false)
, а затем извлекал новые данные, чтобы можно было записать автономные данные, но это не так. Автономные данные проверяются и приложение подавляется.
Я на самом деле придется написать собственный блок кода, как тот, который вы публикуемую как я с помощью FirebaseListAdapter, но использовал пользовательский код, например по этому вопросу. – Relm