Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为特定数据库引用设置Firebase.setPersistenceEnabled()_Java_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Java 为特定数据库引用设置Firebase.setPersistenceEnabled()

Java 为特定数据库引用设置Firebase.setPersistenceEnabled(),java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我有一个ListenerForSingleValueEvent,它在执行特定操作之前检查数据库中的特定值。但由于.setPersistenceEnabled为true,因此它使用磁盘缓存中的值,该值有时可能错误且未更新,并导致用户执行任务,即使用户不应该能够执行该任务 我可以将.setPersistenceEnabled设置为false,但我有一个聊天功能,每次用户打开应用程序时重新加载消息都会对用户非常不友好。是否有一种方法可以只为某些特定的数据库引用设置.setPersistenceEnab

我有一个
ListenerForSingleValueEvent
,它在执行特定操作之前检查数据库中的特定值。但由于
.setPersistenceEnabled
为true,因此它使用磁盘缓存中的值,该值有时可能错误且未更新,并导致用户执行任务,即使用户不应该能够执行该任务


我可以将
.setPersistenceEnabled
设置为false,但我有一个聊天功能,每次用户打开应用程序时重新加载消息都会对用户非常不友好。是否有一种方法可以只为某些特定的数据库引用设置
.setPersistenceEnabled
,然后每次重新加载所有其他引用,反之亦然,即为所有数据库引用设置
.setPersistenceEnabled
,并每次重新加载特定引用。谢谢您的帮助。

听起来您可能可以使用:

通过对某个位置调用
keepSynced(true)
,该位置的数据 位置将自动下载并保持同步,即使在 没有为该位置附加侦听器。此外,虽然 位置保持同步,它将不会从持久化进程中退出 磁盘缓存


我已经研究过了,但是如果没有
setPersistenceEnabled(true)
,那么
keepSynced(true)
就不起作用了。好吧,在阅读了这个答案后,我更明白了:那我该怎么办?