删除活动消失时的Firebase侦听器



在iOS中,当视图控制器消失时,删除侦听器是一种很好的做法。那么,在安卓的世界里,它是一样的吗?我应该删除活动的onPause()中的所有侦听器吗

如果我们谈论的是好的实践,那么首先就不应该在Activity中有听众。每当发生配置更改(例如屏幕旋转(时,Activity将调用onPauseonStoponDestroyonCreateonStartonResume。如果您的侦听器在Activity中,则在配置更改时重建ui的时间将比需要的时间长得多。对于这个问题,Google自己的解决方案是架构组件库中的ViewModel。侦听器应该在您的ViewModel中,甚至可能是从ViewModel调用的Repository中。所有这些都在提供的链接中进行了更详细的解释。

最新更新