gpt4 book ai didi

android - Firebase 实时数据库 addValueEventListener

转载 作者:搜寻专家 更新时间:2023-11-01 09:44:03 26 4
gpt4 key购买 nike

我已将 setPersistenceEnabled 设置为 true,我正在使用 addValueEventListener 并在其中使用 onDataChange 方法。每次调用该方法时,我的应用程序是否总是从服务器下载数据,或者我的应用程序是否会从缓存中获取数据(如果可用)?当我离线时,我确信数据来自缓存。

#askFirebase

最佳答案

当您使用 addValueEventListener() 附加监听器并且数据在本地磁盘缓存中可用时,onDataChange() 方法将立即使用来自缓存。

然后,Firebase 客户端将向服务器注册以更新数据。每当它收到更新的数据时,它都会再次调用 onDataChange()

因此,如果您的本地磁盘缓存中有陈旧数据,您可能会“快速”连续收到两次对 onDataChange() 的调用:一次使用陈旧数据,第二个使用最新数据.目前无法查看数据是否过时。

真正造成棘手情况的唯一情况是您使用 addListenerForSingleValueEvent() 时。由于您只会在那里获得第一个 onDataChange() 事件,因此您可能只会获得陈旧的数据。这是我们建议不要将磁盘持久性与单值事件监听器混合使用的原因之一。

关于android - Firebase 实时数据库 addValueEventListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38664365/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com