【发布时间】:2010-12-14 07:39:51
【问题描述】:
当我的 Android 应用程序需要注册接收器时,我一直在 Activity.onCreate() 中注册并在 Activity.onDestroy() 中取消注册(我想我应该改用 onPause() 和 onResume(),但事实并非如此真的很重要):
public class Foo extends Activity {
private Receiver bar = null;
@Override public void onCreate(Bundle bundle) {
this.registerReceiver(this.bar = new Receiver(), new IntentFilter());
}
@Override public void onDestroy(Bundle bundle) {
this.unregisterReceiver(this.bar);
}
}
是否真的需要注销接收器,或者当我的应用程序退出时框架会处理它?
【问题讨论】:
-
顺便说一句,调用 onDestroy 并不能保证,因为 Android 可能会杀死你的进程。
-
@Yaroslav 我说“我想我应该使用 onPause() 和 onResume() 代替,但这不是重点”
标签: android android-activity receiver