私はアンドロイドでBroadcastReceiverについて学習していました。 BroadcastReceiversは、オブザーバーのデザインパターンに基づいています(非常に興味深い)。
私が達成しようとしているのは、私のメッセージをブロードキャストし、同じ活動の中でメッセージを受け取ることです(テスト目的のためだけです)。ここ は、ここでは、コード・スニペット同じアクティビティでブロードキャストを受信することができません
Log.d("ABC", "sending");
Intent intent = new Intent("com.yourcompany.testIntent");
intent.putExtra("value", "test");
sendBroadcast(intent);
Log.d("ABC", "sent");
IntentFilter filter = new IntentFilter("com.yourcompany.testIntent");
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.d("ABC","INSIDE ");
String value = intent.getExtras().getString("value");
}
};
Log.d("ABC", "receiving");
registerReceiver(receiver, filter);
Log.d("ABC", "received");
は、デバッグ出力
04-06 20:40:52.446 20149から20149/com.example.illuminati.broadcastreceiver D/ABC:送信 04-06 20:40:52.447 20149-20149/com.example.illuminati.broadcastreceiver D/ABC:送信済み04-06 20:40:52.448 20149-20149/com.example.illuminati.broadcastreceiver D/ABC:受信04-06 20:40:52.453 20149-20149/com.example.illuminati.broadcast受信機D/ABC:私がここに
任意の助けをしないのです何onReceive()メソッド
内で取得していないのはなぜ
を受けましたか?
このような愚かな間違いを参照してください。私は十分にあなたに感謝することはできません。ありがとうたくさん:) –
あなたは歓迎です、勉強を続けてください! – AlexTa