android – Firebase脱机功能作为缓存

我想知道将firebase脱机功能用作“免费”缓存是否合理.
让我们假设我在活动A中,我从firebase获取一些数据,然后我转移到活动B,它需要相同的数据.如果应用程序配置了setPersistenceEnabled(true),并且如果需要,还配置了keepSynced(true),我可以只重新查询活动B中的相同数据,而不是传递它吗?
据我所知,这两种方法在内存读取和磁盘读取(firebase脱机缓存)方面存在差异.但是,我是否真的通过使用firebase脱机来摆脱所有网络开销?

相关链接
Firebase Offline Capabilities and addListenerForSingleValueEvent
https://groups.google.com/forum/#!msg/firebase-talk/ptTtEyBDKls/XbNKD_K8CQAJ

解决方法

是的,您可以轻松地在每个活动中重新查询Firebase数据库,而不是传递数据.如果启用磁盘持久性,则这将是本地读取操作.但是,由于您附加了一个侦听器(或通过keepSynced()保持连接),它将导致网络流量.

但是,不要将Firebase用作仅限脱机的数据库.它实际上被设计为一个在线数据库,可以在短时间到中间的断开连接期间工作.离线时,它将保持写操作的队列.随着此队列的增长,本地操作和应用程序启动将变慢.没什么大不了的,但随着时间的推移,这些可能会增加

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...