重新启动Fragment是否还会调用FirebaseDatabase

时间:2019-12-07 16:10:30

标签: android firebase android-fragments firebase-realtime-database

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

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

还是我必须使用Add Show Hide?还是那会导致内存泄漏?

1 个答案:

答案 0 :(得分:0)

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

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