コンピュータクワガタ

かっぱのかっぱによるコンピュータ関連のサイトです

Androidアプリ入門 No.67 Intentのプロードキャスト レシーバーのライフサイクル

Intentのブロードキャスト

レシーバーのライフサイクル

BroadcastReceiverは、それが呼び出されたときにインスタンスが作成される。それを確認するために、TestReceiver.javaを以下のように変更する。

package sample.bt;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;

public class TestReceiver extends BroadcastReceiver {
    private int count = 0;

    public TestReceiver() {
        Log.i("TestReceiver", "Constructor");
    }

    @Override
    public void onReceive(Context context, Intent intent) {
        String testString = intent.getExtras().getString("broadcastTest");
        count++;
        Toast.makeText(context, count + ":" + testString, Toast.LENGTH_SHORT).show();
    }
}

実行結果は以下。ボタンを何回押してもcountの値が1かつ、コンストラクタ起動のログが出力されていることがわかる。