Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android BroadcastReceiver没有意图过滤器大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_450_0@
我在 @L_245_0@manifest.xml中遇到过这样的事情:
<receiver android:name="com.TESTCo.test.TestReceiver"/>

以上是TestReceiver扩展了BroadcastReceiver类.我认为接收者将收到所有意图,但显然没有,除非我添加意图过滤器标签,否则它不起作用.那么如果没有意图过滤器,它会做什么呢?是错字还是真的做点什么?

更新:我在这链接Trying to have a Broadcast Receiver with No filter的帮助下想出了这一点

可以使用通常的字符串标识符来调用广播,而不必将动作字符串设置为intent,然后将其广播.示例代码供参

Intent notifyIntent = new Intent(getApplicationContext(),TestReceiver.class);
notifyIntent.setAction("RECEIVE");
sendBroadcast(notifyIntent);

BroadcastReceiver的处理是一样的.

解决方法

在隐式意图的情况下,需要一个Intent过滤器,如果未指定intent过滤器,则必须显式调用它.所以要调用这个接收器,你需要调用
Intent intent = new Intent(getApplicationContext(),com.TESTCo.test.TestReceiver.class);
sendBroadcast(intent);`

大佬总结

以上是大佬教程为你收集整理的Android BroadcastReceiver没有意图过滤器全部内容,希望文章能够帮你解决Android BroadcastReceiver没有意图过滤器所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。