博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unable to instantiate receiver xxx.receiver.NetworkReceiver异常
阅读量:4576 次
发布时间:2019-06-08

本文共 806 字,大约阅读时间需要 2 分钟。

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,就会出问题了

   

相关资料:

              

转载于:https://www.cnblogs.com/mingfeng002/p/6761169.html

你可能感兴趣的文章
msf win10漏洞_永恒之黑:CVE20200796漏洞复现
查看>>
华为nova5iotg功能使用_华为手机录屏功能和投屏功能都那么强大,说没用过真的合适吗?...
查看>>
卡路里消耗软件_精心计算卡路里,效果却不如意。减重的你其实可以用一个“手掌”来轻松搞定。...
查看>>
外接显示器设置_iPad Pro 2018/2020 Type-C to DP外接显示器的一点体验 「Soomal」
查看>>
选中内容_小技法:防止对话框中的编辑框内容自动被选中
查看>>
vue前端验证输入_vue实现6位验证码输入框的实例代码
查看>>
tewa600agm是千兆吗_请问电信天翼网关光纤猫超级用户 型号tewa-600aem/tewa600agm
查看>>
jpa transaction 回滚_如何让Spring @Transactional回滚所有未捕获的异常?
查看>>
教改系统 源码_教务管理信息系统源代码
查看>>
wps右键失效_鼠标左键失灵右键代替左键怎么设置
查看>>
cc2530单片机的内核是什么_ZigBee技术开发:CC2530单片机原理及应用简介,目录书摘...
查看>>
学完python基础后该学什么专业_没有基础该怎么学Python,学完后好不好找工作
查看>>
keepalived 多个应用_keepalived 实现 Java 服务的高可用(主备切换)
查看>>
mysql提权 入侵提权软件_【技术】3306端口手动入侵之mysql写入启动项提权
查看>>
windows7 mysql 主从配置_windows下两个mysql5.7的主从配置实现数据库同步
查看>>
mysql多实例 集群_mysqld_multi 快速部署多实例
查看>>
centos 安装mysql脚本_centos7(脚本)安装配置mysql
查看>>
mysql唯一约束和非空_MySQL||唯一约束(Unique Key)和非空约束(NOT NULL)
查看>>
mysql链接失败 驱动_Android连接MySQL问题,驱动加载成功,连接却失败
查看>>
mysql怎么默认utf-8_mysql如何设置默认编码为utf-8
查看>>