1

我决定在 XCode iOS 模拟器上运行测试,以查看 Firebase 数据库中某个位置的观察者是否会在应用程序处于后台时继续触发。事实证明确实如此,但我想知道这是否在应用程序终止之前是无限期的,或者它是否会在一段时间后真正停止。已经很长时间了,每当我手动更新观察者正在查看的数据库中的值时,观察者仍然会触发。另请注意,我的应用程序功能中没有启用任何背景模式,因此尽管没有任何类型的明确背景模式,但观察者似乎可以在背景模式下持续存在。

一方面,我很高兴观察者留在后台,因为这对我有帮助,但我有点急于知道为什么允许发生这种情况,因为默认情况下 iPhone 在做事时通常非常保守在后台。

4

1 回答 1

2

虽然侦听器可能会在您的单个测试用例中保持活动状态,但您不应依赖 Firebase 数据库侦听器进行后台数据传输。

只要连接保持打开状态,侦听器就会保持活动状态。由操作系统决定何时关闭连接。在这种情况下,iOS 模拟器很有可能具有与物理设备不同的行为。

于 2016-10-31T14:33:07.223 回答