【问题标题】:Disabling Firestore's network connection vs removing individual snapshot listeners when app enters background?当应用程序进入后台时,禁用 Firestore 的网络连接与删除单个快照侦听器?
【发布时间】:2020-04-16 04:14:02
【问题描述】:

我们可以选择使用 disableNetwork 方法禁用 Firestore 的网络连接,还可以选择使用 remove 方法删除单个快照侦听器。当应用程序进入和退出后台时,我一直习惯于单独删除和重新添加侦听器(因此当应用程序不在前台时,Firestore 不会执行)。但是,当应用程序进入/退出后台时,我不应该只在一个地方禁用/启用网络连接,而不是我现在这样做的方式,有什么理由吗?这两种方法有什么区别吗?这种方法有什么负面影响吗?

【问题讨论】:

    标签: google-cloud-firestore


    【解决方案1】:

    将侦听器与正在填充其数据的视图一起单独处理更为正确。

    禁用网络可能会产生您不希望将来出现的副作用。例如,如果您想在应用不在屏幕上的情况下在应用中进行一些简单的后台处理,那么完全关闭网络将成为阻碍。

    【讨论】:

    • 除了我自己的不便之外,还有什么副作用吗?
    • 也许吧?您必须仔细考虑为您的应用禁用网络意味着什么。您会注意到产品文档并未因此建议禁用网络。主要原因是强制所有查询使用本地缓存,这可以节省文档读取和单个文档请求的延迟。如果你不这样做,你就会在线条之外着色。但最终还是由您决定。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-11
    • 2021-01-19
    • 1970-01-01
    • 2021-04-09
    • 2017-05-31
    相关资源
    最近更新 更多