为特定的DatabaseReference

时间:2017-05-19 19:41:05

标签: java android firebase firebase-realtime-database

我有一个ListenerForSingleValueEvent,可以在执行特定操作之前检查数据库中的特定值。但是因为.setPersistenceEnabled是真的,它使用磁盘缓存中的值,有时可能是错误的并且没有更新,并且导致用户执行任务,即使用户不能这样做。

我可以将.setPersistenceEnabled设置为false,但我有一个聊天功能,每次用户打开应用时重新加载邮件对用户来说都是非常不友好的。有没有办法我只能为某些特定的数据库引用设置.setPersistenceEnabled并每次重新加载所有其他引用,反之亦然,即.setPersistenceEnabled用于所有数据库引用并每次重新加载特定引用。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

听起来您可以使用Query.keepSynced()

  

通过在某个位置调用keepSynced(true),即可获得该数据   即使在,位置也会自动下载并保持同步   没有为该位置附加侦听器。另外,一个   位置保持同步,不会从持久性中逐出   磁盘缓存。