1

Android アプリケーションでレシーバーを登録する必要がある場合、登録Activity.onCreate()と登録解除を行っていました (代わりにandActivity.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);
    }
}

レシーバーの登録解除は実際に必要ですか、それともアプリケーションの終了時にフレームワークがそれを処理しますか?

4

2 に答える 2

0

Activity.onResume() 実装でレシーバーを登録する場合は、Activity.onPause() で登録解除する必要があります。(一時停止するとインテントを受信しなくなり、不要なシステム オーバーヘッドが削減されます)

于 2010-12-14T10:00:59.720 に答える