Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无意图过滤器的Android广播接收器_Android_Android Intent_Broadcastreceiver_Intentfilter - Fatal编程技术网

无意图过滤器的Android广播接收器

无意图过滤器的Android广播接收器,android,android-intent,broadcastreceiver,intentfilter,Android,Android Intent,Broadcastreceiver,Intentfilter,我在一些安卓广告网络SDK中看到,他们声明BroadcastReceiver没有意图过滤器。大概是这样的: <receiver android:name="com.example.SampleReceiver" /> context.sendBroadcast(new Intent(context, MyBroadcastReceiverClass.class)); 我启动了该应用程序,试图通过在手机上执行各种操作来触发一些事件,并注意到,onReceive()甚至没有被调用一次

我在一些安卓广告网络SDK中看到,他们声明
BroadcastReceiver
没有意图过滤器。大概是这样的:

<receiver android:name="com.example.SampleReceiver" />
context.sendBroadcast(new Intent(context, MyBroadcastReceiverClass.class));
我启动了该应用程序,试图通过在手机上执行各种操作来触发一些事件,并注意到,
onReceive()
甚至没有被调用一次


所以问题是——这种无意图过滤器的广播接收器是如何工作的?可能需要通过代码创建意图过滤器?如果是,怎么做?如果没有,为什么它没有收到任何事件?这是怎么回事?

我认为下面的问题/答案应该会给你一些线索:


如果您没有一些意图过滤器,那么接收内容的唯一方法就是显式地调用接收者。 这看起来像这样:

<receiver android:name="com.example.SampleReceiver" />
context.sendBroadcast(new Intent(context, MyBroadcastReceiverClass.class));
另一个人已经在下面的帖子中回答了这个问题:

您现在的收视率很高:)这表明这种广播接收器并没有接收所有事件。但问题依然存在:那么,这样的接受者在做什么?无论如何,谢谢。我怀疑他们根据你看不到的代码设置了一个意图过滤器。但它仍然没有回答他们是如何做到的:)如果你想通过命令行测试它,你可以运行
adb shell am-n com.example/.SampleReceiver