Android3.1后Boot_COMPLETED广播不响应的问题
在做Android开发时,很多应用由于各种目的,希望在机器启动时被唤醒,一般的做法是写一个BroadcastReceiver,接收对应的boot action,当然别忘了在Manifest中添加permission "android.permission.RECEIVE_BOOT_COMPLETED“。但是最近在做4.0开发时,有同事声称这个广播接收不到了,同时其他有人又说自己的能接收到,到底是怎么回事呢。
原来,在3.1之后,系统的package manager增加了对处于“stopped state”应用的管理,这个stopped和Activity生命周期中的stop状态是完全两码事,指的是安装后从来没有启动过和被用户手动强制停止的应用,与此同时系统增加了2个Flag:FLAG_INCLUDE_STOPPED_PACKAGES和FLAG_EXCLUDE_STOPPED_PACKAGES ,来标识一个intent是否激活处于“stopped state”的应用。当2个Flag都不设置或者都进行设置的时候,采用的是FLAG_INCLUDE_STOPPED_PACKAGES的效果。
有了上面的新机制之后,google觉得给所有的广播intent默认加上FLAG_EXCLUDE_STOPPED_PACKAGES会非常的Cooooool,能在一定程度上避免流氓软件、病毒啊干坏事,还能提高效率,就导致了本文题目中说的问题,RECEIVE_BOOT_COMPLETED广播如果用户没有运行过应用,就不会响应了。
不过google还是留了点余地,允许应用和后台服务通过给广播intent设置FLAG_INCLUDE_STOPPED_PACKAGES来唤醒处于“stopped state”的程序,也就是用户自己写的广播intent可以控制这个机制,但是系统自带的广播intent,由于不能修改,就只能接受这个现实了。
在3.1的更新文档中,能够找到上述修改的说明:http://developer.android.com/sdk/android-3.1.html#launchcontrols
Android3.1后Boot_COMPLETED广播不响应的问题相关推荐
- Android4.4KK中BOOT_COMPLETED广播问题的分析
详细内容和具体分析流程也可以下载PDF文档: BOOT_COMPLETED issue analysis report 一.问题现象 手机开机后,按POWER键无法关闭屏幕,过了很长一段时间(20s左 ...
- 调用startActivityForResult后,onActivityResult无响应的题目
人员都知道,可以经由过程应用 startActivityForResult() 和 onActivityResult() 办法来传递或接管参数. 然而在"轻听"项目中,还没比及被调 ...
- 记录WIN10选择文件右键后资源管理器无响应的解决方法
现象:WIN10选择文件,右键文件后资源管理器无响应 解决方法:找到一种亲测可用的解决方法,即清除文件资源管理器历史记录 详细操作: 1.打开文件资源管理器 2.点击左上角[文件],点击[选项],找到 ...
- Android8.0后静态广播以及有序广播的使用
Android8.0后静态广播以及有序广播的使用 我们都知道,8.0为了管理系统和节约电量特别针对广播和服务发送intent的方式启动做出的改变,Android8.0后正常静态注册的广播都没有用了,现 ...
- 笔记本电脑dns服务器没有响应怎么办,华硕笔记本重装系统后dns服务器未响应怎么办?...
电脑使用的时候,出现问题的情况很多.而最近,就有位华硕笔记本用户,重装系统后,发现连接网络时,出现了无法连接的情况.经过检测,发现是DNS 服务器未响应导致的,想知道如何解决.下面一起来看看华硕笔记本 ...
- 从后渗透分析应急响应的那些事儿(二)免杀初识篇
从后渗透分析应急响应的那些事儿(二)免杀初识篇 文章首发于freebuf Tidesec专栏 https://www.freebuf.com/column/204005.html,转载到个人博客记录, ...
- app接入支付宝后,支付成功后,回调不响应
1.在支付时使用的是 [[AlipaySDK defaultService] payOrder: fromScheme: callback:^(NSDictionary *resultDic) { N ...
- 路由器设置好后服务器无响应,路由器设置好后提示服务器没响应
路由器设置好后提示服务器没响应 内容精选 换一换 Computer:路由器连接交换机怎么建立局域网 目录 路由器连接交换机怎么建立局域网 步骤1:网络接线设置 [家庭网络环境布线] [电脑进入路由器] ...
- metersphere后置脚本提取响应头,响应体;
一,首先观察下你的响应头,都是key:value形式的: 二,我们需要先添加一个后置脚本,右侧默认选择的beanshell编写: 三,点击右侧的获取响应头,就能得到完整的响应头,如下我们脚本的前两行: ...
最新文章
- 二十二、插值查找算法
- php面向对象中的魔术方法中文说明
- CSDN蒋涛大数据表明:DCO - 区块链时代企业级服务的全新机会
- boost::hana::back用法的测试程序
- 如何在ASP.NET Core程序启动时运行异步任务(2)
- 【渝粤题库】国家开放大学2021春1080工程数学(本)题目
- LInux:shell 命令:字符串截取
- 高度为5的3阶b树含有的关键字个数_第15期:索引设计(索引组织方式 B+ 树)
- oracle主备不同步,主备环境下数据不一致重新部署复制
- Yum本地Rpm库设置
- 对比Vector、ArrayList、LinkedList有何区别(转)
- 【字体】编程常用字体推荐,微软,苹果,开源系统默认代码字体
- mac 阿里云ecs配置php,在Mac OS下配置PHP开发环境
- Mac电脑 绑定阿里云企业邮箱
- ffmpeg音视频处理
- 最新在Anaconda环境下安装pytorch以及cuda!!!
- 论文阅读:2021.11.23~2021.12.1
- 关于分类模型评估指标的理解
- excel 转csv 导入数据库乱码解决
- 不二越机器人编程手册_NACHI机器人说明书.doc
热门文章
- Oracle 12c R1 Plug/Unplug 迁移PDB实验(1): 插拔 RAC PDB到 Non-RAC PDB
- 空气果Airnut1S拆解评测
- 视频教程-汇编语言程序设计V-其他
- SpringMVC实现服务器端推送服务
- 2个月面试腾讯、B站、网易等11家公司的面经总结!深夜思考
- Python pickle 介绍及使用理解
- 谁动了我的奶酪-----经典的话 经典的总结
- mysql集群搭建与总结
- 初学爬虫之 urllib 库的介绍与使用(一)
- Matlab-TOA定位算法性能仿真 TOA-LLOP和TOA-CHAN得到位置的估计 两种算法的性能比较 两种算法的RMSE曲线对比图