Firebase最棒的一件事就是它的离线持久性。
使用iOS和Android SDK,当您将观察者附加到引用时,返回的值将被缓存(如果persistenceEnabled
设置为YES
),并且在您的应用程序离线时可用,并用作稍后附加新观察者时触发更改事件的比较点。太好了。
但我的问题是,是否有可能以相同或类似的方式获取Geofire缓存,或者应用程序是否需要在线才能从Geofire查询中获取任何信息?当Geofire查询返回一些东西时,它会被缓存吗?
经过大量的谷歌搜索,我没有发现任何关于Geofire的离线持久性的提及,所以我假设它只是在线的,但如果有人能澄清这一点就太好了!
发布于 2018-09-03 14:27:45
GeoFire是一个建立在Firebase实时数据库之上的库。它没有自己的存储层,而是依赖RTDB来满足其所有数据存储需求。
因此,如果您在RTDB上启用磁盘持久性,则GeoFire加载的数据将持久存储到磁盘。如果在脱机状态下运行GeoFire查询,则将针对磁盘缓存中的数据执行查询。
但是Firebase RTDB的磁盘持久化有许多已知的边缘情况,所以如果它能满足您的需要,您绝对应该尝试一下。
https://stackoverflow.com/questions/52150738
复制