关于BroadCastReceiver无法接收到广播的问题
来源:互联网 发布:泰国买衣服便宜 知乎 编辑:程序博客网 时间:2024/06/07 05:45
我们在做android项目的时候,很多时候会碰到自己写的广播接收器无法就收到发送的广播,这是很郁闷的事情。
查看代码,也许是自己少写了取消注册,也许是action加入错误,但是这些都不是主要的错误,问题不大,但是如何不是这些问题呢,代码检查后发现很“完美”~!
如果是没有经验的人,这就要费些周折了,我跟大家说下,你很可能是犯的以下的错误:
广播接收器如果在activity中注册,则它跟随着activity的生命周期,在onCreate()方法里进行注册,在onDestroy方法里进行销毁,则只要这个Activity被创建了,并且即使在后台运行,也没有被Destroy,则该广播接收器就一直能接收广播,反之,则无法接收广播。
另外,我们需要知道的一些知识的:
1.接收广播之后,广播接收器的onReceive()方法是在主线程进行,是会阻塞主线程的,如果onReceive方法在10秒内没有处理完,则应用就会出现ANR,因此的一些非常耗时的操作就要放到Service中去执行了。比如在广播中再启动一个耗时的线程,就是不对的;
2.BroadCastReceiver的两种注册方式:动态注册和静态注册(AndroidMainfest.xml)。要知道动态注册的优先级是要高于静态注册的。
1 0
- 关于BroadCastReceiver无法接收到广播的问题
- BroadCastReceiver无法接收到广播的一种可能
- Android 无法接收开机广播的问题
- Android 无法接收开机广播的问题
- BroadcastReceiver(接收广播)
- 接收广播BroadcastReceiver
- 接收广播BroadcastReceiver
- 小米手机部分广播无法接收到的原因
- 【Android】Android 4.0 无法接收开机广播的问题
- 【Android】Android 4.0 无法接收开机广播的问题
- Android 无法接收开机广播的问题(SD卡)
- BroadcastReceiver无法接受广播的原因之一
- Jpush消息广播无法接收到
- 关于开机广播无法接受的问题
- android关于静态广播无法接收2
- Android广播接收机制(BroadcastReceiver)
- BroadcastReceiver 接收系统短信广播
- Android广播接收机制(BroadcastReceiver)
- 2016.3.15python基础
- 常用开源协议详细解析
- linux grep--文本搜索
- 类别扩张协议委托
- 推荐一些查找Android开源项目的国内网站
- 关于BroadCastReceiver无法接收到广播的问题
- mac下解决phpStorm系统目录分区的磁盘空间不足
- POJ 3709 K-Anonymous Sequence
- ngx_lua实现重启php
- Java数组操作的10大方法,大部分代码都来自Stack Overflow。
- 李丰杰老师 实战生产管理专家
- 子字符串查找算法_归纳及汇总
- 深复制浅复制
- ft难点记录