Android中のregisterReceiver(mReceiver, mFilter)の使い方

Androidでは、registerReceiver()メソッドを使って特定のタイプのブロードキャストメッセージを受信するため、BroadcastReceiverオブジェクトを登録します。

使用方法は以下のとおりです。

  1. ブロードキャストレシーバオブジェクトとインテントフィルターオブジェクトを作成する。
BroadcastReceiver mReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // 在这里处理接收到的广播消息
    }
};

IntentFilter mFilter = new IntentFilter();
mFilter.addAction("android.intent.action.SOME_ACTION"); // 添加你要接收的广播消息的action
  1. Activityまたはサービス内でregisterReceiver()メソッドを呼び出してブロードキャストレシーバーを登録する。
registerReceiver(mReceiver, mFilter);
  1. 一致するブロードキャストメッセージを受信すると、BroadcastReceiverのonReceive()メソッドが呼び出されます。
@Override
public void onReceive(Context context, Intent intent) {
    // 在这里处理接收到的广播消息
}

注意事項

  1. 不要な時はunregisterReceiver()メソッドでブロードキャストレシーバーを解除して登録を解除し、メモリリークを防いでください。
  2. AndroidManifest.xmlファイルでBroadcastReceiverオブジェクトを宣言する際に、受信するブロードキャストメッセージのactionも指定できます。これによって、アプリケーションが起動していないときでも、対応するブロードキャストメッセージを受信できます。
bannerAds