【发布时间】:2011-03-27 10:41:05
【问题描述】:
我正在制作一个仅在屏幕打开时才处于活动状态的 android 小部件,以延长电池寿命。所以我有一项服务一直在运行并对 ACTION_SCREEN_ON 和 ACTION_SCREEN_OFF 做出反应。当屏幕关闭时,我取消注册其他广播接收器,当屏幕打开时,我再次注册它们。
我的问题是,当屏幕关闭时,关于电池寿命的最佳做法是什么。删除广播接收器变量(即 m_Receiver = null;)是否更好,或者取消注册就足够了?删除意味着系统有更多的可用内存,但会导致垃圾收集和额外的内存操作(当屏幕打开时我必须创建一个新的接收器),这些操作很昂贵......
【问题讨论】:
标签: android broadcastreceiver battery