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かつ、コンストラクタ起動のログが出力されていることがわかる。