Unable to instantiate receiver xxx.receiver.NetworkReceiver异常
Unable to instantiate xxxreceiver.NetworkReceiver: 这个异常是之前版本有NetworkReceiver(监听网络变化的),新的版本删除了NetworkReceiver类。
在发送一条广播的时候,由于注册一个广播类型的接收器可能有多个,会把所有符合条件的的BroadcastFilter实例放在一个List<BroadcastFilter>中。发送过程中不会去更新这个分发的列list。下次发送广播会获得一个最新接受的列表,按这个列表发送。
这个问题能复现
问题复现步骤
1.一个程序Test发送一个广播有多个(a,b,c,d,e,f,g)Receiver在manifest注册了这个广播,为了能模拟先后顺序将(a,b,c,d,e,f,g)android:priority值分别从大到小,并且每个程序接到广播后睡眠4秒
2.有一个程序testG的g注册了广播在最后执行,(为了模拟覆盖安装过程)
a.覆盖安装分别在manifest里面删除了g的注册,但是不删除g注册远文件g.java (不崩溃)
b.覆盖安装分别在manifest里面删除了g的注册,但是删除g注册远文件g.java (崩溃)
c.覆盖安装分别在manifest里面不删除了g的注册,但是删除g注册远文件g.java (崩溃)
d.覆盖安装分别在manifest里面新加一个注册h,g能收到广播,h不能收到广播
e.覆盖安装分别在程序的Application里面动态注册一个广播i,i不能接受到广播
问题出在,在覆盖安装的时候,对于已经发送出的广播,不会更新这个List<BroadcastFilter>列表。如果这个是在新程序里面,删除了老的receiver,就会出问题了
相关资料:Android应用程序发送广播(sendBroadcast)的过程分析
Android应用程序注册广播接收器(registerReceiver)的过程分析
Unable to instantiate receiver xxx.receiver.NetworkReceiver异常的更多相关文章
- java.lang.RuntimeException: Unable to instantiate activity ComponentInfo异常总结
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo异常总结 做android开发的可能都碰到"j ...
- android异常Unable to instantiate activity ComponentInfo解决方法
我是下面提到的第四条: 在Order and Export 中 把新加的 android-support-v4.jar的前面的对号打上勾 保存:就可以了: 做android开发的可能都碰到" ...
- Java.lang.RuntimeException: Unable to instantiate activity ComponentInfo
如果你更新了ADT的新版本,而工程文件中使用了其他的jar包,也可能会出现"java.lang.RuntimeException: Unable to instantiate activit ...
- Unable to instantiate receiver XXXXXX
运行一个工程的时候时logcat中出现了“Unable to instantiate receiver XX..”. 检查后发现,由于是东拼西凑的代码,所以在Manifest文件里注册了Receive ...
- Hibernate 异常 —— Unable to instantiate default tuplize
出现这个异常 —— Unable to instantiate default tuplizer ,是 Hibernate 的映射文件(*.hbm.xml)导致的.仔细检查一下工程里的映射文件吧. 笔 ...
- Hive之FAILED: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient异常
一.场景 Hive启动不报错,当使用show functions;或create table...时报:FAILED: SemanticException org.apache.hadoop.hive ...
- hive 2以上版本启动异常 Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
hive2.0以上的版本启动时 抛出 “Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreCli ...
- struts2整合spring出现的Unable to instantiate Action异常
在struts2整合spring的时候,完全一步步按照官方文档上去做的,最后发现出现 Unable to instantiate Action,网上一搜发现很多人和我一样的问题,配置什么都没有错误,就 ...
- Unable to instantiate Action, xxxAction, defined for 'xxxAction' in namespace '/'xxx
最近写SSH2的项目时,遇到一些小问题,action得不到service实例,遂将struct2委托给spring进行管理,然后修改了bean的id和action的class,但是运行后发现找不到ac ...
随机推荐
- plsql developer 常用配置
执行语句时间太长,关闭 plsql developer 重启 F8 执行SQL 1 设置默认执行鼠标所在sql tools->preferences->sql window->win ...
- easyUI datagrid 分页参数page和rows
Struts2获取easyUI datagrid 分页参数page和rows 用pageHelper分页时,只要是能够获取前台传来的两个参数page和rows基本就完成了很大一部分. 获取方法:定义两 ...
- Linux sogou input method
afda@afda-Y720-15IKB:~$ wget "http://pinyin.sogou.com/linux/download.php?f=linux&bit=64&quo ...
- mybatis spring maven
maven版本:3.3.9 解压即可使用 spring版本:4.3.9 通过maven进行管理下载 mybatis版本:3.4.4 通过maven进行管理下载 mysql版本:5.7 conne ...
- 1、Tomcat7性能监控与优化
1. 目的 通过优化tomcat提高网站的并发能力. 2. 服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力有决定性影响. 3. 优化配置 3.1. 配置tomcat管理员账户 ...
- Data Base mysql备份与恢复
mysql 备份与恢复 为什么要备份: 由于系统使用到了MySQL 数 据库,所以每天的工作,就设计到了MySQL数据库的备份问题.但如果每天手工来做MySQL数据库的定时备份,工作量不说,时间还不 ...
- java java 内部类
java 内部类 一.java内部类: java内部类分为: 成员内部类.静态嵌套类.方法内部类.匿名内部类 . 内部类的共性: (1).内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.c ...
- Django之博客系统:增加标签
一般在发表博客后会给每个帖子加上一个标签.类似帖子关键字的功能.在这一章中来看下如何给博客添加标签功能(tagging) 添加标签需要集成第三方的Django标签应用来完成这个功能.django-ta ...
- CHUI类
自定义控件程序运行流程 setNeedsLayOut和setNeedsDisplay区别 masonry使用技巧 1.普通展示 UILabel UIView UI控件的位置 U ...
- OpenCV自带dnn的Example研究(6)— text_detection
这个博客系列,简单来说,今天我们就是要研究 https://docs.opencv.org/master/examples.html下的 6个文件,看看在最新的OpenCV中,它们是如何发挥作用的. ...