質問: intent.getAction(); ``` 例えば上記コード内のデータを受信した時に入ってくるonReceive(Context context, Intent intent)イベントの引数のintentの値が、状態がかわると内容が変わっているのですが、これはいつどこで変更されているのでしょうか?
回答: AndroidにおけるIntentとは、コンポーネント(ActivityやServiceなど)の間で情報の受け渡しを行うためのオブジェクトです。特定のアプリを開くために送るIntentもありますし、広域的に通知を行うためのIntentもあります。BroadcastReceiverは後者を受け取るためのものです。広域的な通知とは、例えばWi-Fiの状態が変化した、モバイルネットワークの状態が変化した、バッテリーの残量が変化した、など様々なものがあります。 作成しているプロジェクトのAndroidManifest.xmlにというものを設定しているはずですが、BroadcastReceiverはこのフィルターをパスしたIntentを尽く受信します。どのようなフィルターで作成されているのか質問からはわかりませんが、受け取ったIntentオブジェクトの内容は、そのときのシステムの状態によってその都度異なる内容になることは普通にあり得ます。 「いつどこで変更されているのか」と質問されていますが、Androidのシステムによって通知内容が書き換えられるようなことはありません。送り主によって作成された内容がそのまま通知されます。