题目
12.(填空题) 动态注册广播接收器时,需调用_方法,并可在适当位置onDestroy()方法中调用_取消注册,避免内存泄漏。
12.(填空题) 动态注册广播接收器时,需调用_方法,并可在适当位置onDestroy()方法中调用_取消注册,避免内存泄漏。
题目解答
答案
在动态注册广播接收器时,需调用**registerReceiver()**方法,并在合适位置(如`onDestroy()`方法中)调用**unregisterReceiver()**取消注册,以避免内存泄漏。
**思路分析**:
1. **注册广播接收器**:动态注册需在代码中通过`Context`的`registerReceiver()`方法完成,此时接收器与组件(如Activity)的生命周期绑定。
2. **取消注册**:若未主动调用`unregisterReceiver()`,组件销毁时接收器仍可能占用资源,导致内存泄漏。因此需在`onDestroy()`等适当位置调用该方法,解除绑定。
**答案**:
动态注册广播接收器时,需调用`registerReceiver()`方法,并在`onDestroy()`方法中调用`unregisterReceiver()`取消注册,避免内存泄漏。
解析
本题考查动态注册广播接收器的相关知识。解题思路如下:
- 注册广播接收器:在 Android 开发中,动态注册广播接收器是通过代码来完成的。具体操作是调用 the
registerReceiver()method of theContextclass. This method is used to register a broadcast receiver, and it binds the receiver to the component (such as an Activity) in the code. - 取消注册:如果不主动调用
unregisterReceiver()方法来取消注册,当组件(如 Activity)被销毁时,广播接收器可能仍然会占用系统资源,从而导致内存泄漏。为了避免这种情况,我们需要在合适的位置(通常是onDestroy()方法中)调用unregisterReceiver()方法,以解除广播接收器与组件的绑定。