重新启动Fragment也会调用FirebaseDatabase

问题描述 投票:0回答:1

我有3个片段和一个底部导航菜单,可在它们之间进行切换。在每个片段中,我都有一个recyclerview来显示从FirebaseDatabase收集的数据。

我的问题是:我应该使用Replace()片段吗?因为这将导致重新启动片段并在用户每次在片段之间导航时再次请求Firebase SingleEventValue

或者我必须使用AddShowHide?否则会导致内存泄漏?

android firebase android-fragments firebase-realtime-database
1个回答
0
投票

您用于处理碎片的方法大多无关紧要。 Firebase SDK将缓存先前获取的数据,因此,如果您再次请求某些数据,则可以从应用程序的任何位置看到缓存的数据,甚至可以脱机使用。使用单值事件时,这里没有“泄漏”。

将侦听器添加到数据库位置是另一回事。理想情况下,应在片段可见时附加侦听器,然后在不可见时分离侦听器。

© www.soinside.com 2019 - 2024. All rights reserved.