在Android上,当活动被破坏时是否有必要删除传感器侦听器? [关闭]

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

在Android平台上,Activity对象可以注册SensorEventListener。有示例显示Listener对象在其所属的Activity被销毁后被显式删除。但是其他示例不包括此步骤,表明此步骤可以自动完成。那将使多余的代码变得多余。我不确定这是否正确。

我的问题是:如果SensorEventListener注册了Activity,如果销毁Listener时未明确删除Activity,将保留哪些资源(如果有)?

java android listener sensor
1个回答
2
投票

是,您需要先删除它,然后再销毁活动。如果不这样做,将导致内存泄漏。根据您的实现,这可能是一个不好的选择。

如果整个应用程序被杀死,那么监听器就会消失,因为应用程序中的所有内容都会消失。但是我不会依赖导致应用程序死亡的特定行为-只需在您注册的任何Activity的onDestroy中注销它即可。最简单的方法是使用LifecycleObserver

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