シンプルなBroadcastReceiverの組み込み

通常ブロードキャストレシーバを定義する時は、ブロードキャストレシーバのクラスを作ったりAndroidManifest.xmlをいじったりして結構メンドイ。

registerReceiver()を使えば、サービスやアクティビティに簡単に組み込める。

@Override
public void onCreate() {
  super.onCreate();
  registerReceiver();
}

@Override
public void onDestroy() {
  unregisterReceiver(mReceiver);
  super.onDestroy();
}

private BroadcastReceiver mReceiver;
private void registerReceiver(){ 
  mReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
      // do anything
    }
  };
  IntentFilter filter = new IntentFilter("unique-string");
  registerReceiver(mReceiver,filter);
}

unregisterReceiver()の呼び出しを忘れずに。