いくつかのアンドロイド広告ネットワークsdksで、インテントフィルタなしでBroadcastReceiver
と宣言しています。このようなもの:インテントフィルタなしのAndroid BroadcastReceiver
<receiver android:name="com.example.SampleReceiver" />
私の推測では、そのようなレシーバはすべての可能なイベントをキャプチャすると考えられます。だから私はそれを自分でやってみましたし、SampleReceiver
を作成しました:
public class SampleReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
System.out.println("Event captured: " + intent.getAction());
}
}
私は、アプリを立ち上げた自分の携帯電話上のさまざまなアクションを実行して、いくつかのイベントを発射しようとしたとonReceive()
が一度も呼び出されていないことに気付きました。
このように、インテントフィルタを使用しないBroadcastReceiverはどのように機能しますか。おそらく、インテントフィルターをコードで作成する必要がありますか?もしそうなら、どうですか?もしそうでなければ、なぜそれはどんな出来事も受けていないのですか?何が起きてる?
あなたは今、偉大な評価の書き込みを持っている:) – Jin35