在iOS中,当视图控制器消失时,删除监听器是good practice。 Android世界也一样吗?我是否应该删除活动onPause()
中的所有监听器
答案 0 :(得分:0)
如果我们在谈论好的做法,那么您一开始就不应让您的Activity
中的听众成为您的倾听者。每当发生配置更改(例如屏幕旋转)时,您的Activity
都会调用onPause
,onStop
,onDestroy
,onCreate
,onStart
,{{ 1}}。如果您的监听器在onResume
中,则在配置更改上重建ui所需的时间将比所需的时间更长。 Google针对此问题的解决方案是Architecture Components库中的Activity
。侦听器应该位于您的ViewModel
中,甚至应该位于ViewModel
中调用的Repository
中。在提供的链接中对此进行了更详细的说明。