Firebase 数据库观察者的持久性如何?
Posted
技术标签:
【中文标题】Firebase 数据库观察者的持久性如何?【英文标题】:Just how persistent are Firebase database observers? 【发布时间】:2016-10-31 06:59:39 【问题描述】:我决定在 XCode ios 模拟器上运行测试,以查看 Firebase 数据库中某个位置的观察者是否会继续触发,即使应用程序处于后台也是如此。事实证明确实如此,但我想知道这是否在应用程序终止之前是无限期的,或者它是否会在一段时间后真正停止。已经很长时间了,每当我手动更新观察者正在查看的数据库中的值时,观察者仍然会触发。另请注意,我的应用程序功能中没有启用任何背景模式,因此尽管没有任何类型的明确背景模式,但观察者似乎可以在背景模式下持续存在。
一方面,我很高兴观察者留在后台,因为这对我有帮助,但我有点急于知道为什么允许发生这种情况,因为 iPhone 通常在默认情况下非常保守在后台做事。
【问题讨论】:
【参考方案1】:虽然侦听器可能在您的单个测试用例中保持活动状态,但您不应依赖 Firebase 数据库侦听器进行后台数据传输。
只要连接保持打开状态,侦听器就会保持活动状态。由操作系统决定何时关闭连接。在这种情况下,iOS 模拟器很有可能具有与物理设备不同的行为。
【讨论】:
以上是关于Firebase 数据库观察者的持久性如何?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过在 swift 中实现观察者从 Firebase 实时数据库中获取嵌套数据