系统什么时候发出BOOT_COMPLETED广播???
答案:4 悬赏:0 手机版
解决时间 2021-02-11 23:22
- 提问者网友:沉默菋噵
- 2021-02-11 05:21
现在需要做一个随系统开机启动的apk。我的方法是写一盒BroadcastReceiver,当收到系统发出的BOOT_COMPLETED消息后,就起activity。现在的问题是,我的activity启动的时间很长,开机后,系统先起的launcher,再过6,7秒的时间,我的app才起来?为什么会这样?我的launcher基本什么都没有做,是自己写的一个很简单的activity,只是在androidmanifest里设置了default和home等属性,来替代原来的launcher
最佳答案
- 五星知识达人网友:醉吻情书
- 2021-02-11 06:08
launcher是home应用程序。本来就是先启动起来后才会发送广播。
全部回答
- 1楼网友:琴狂剑也妄
- 2021-02-11 10:04
android 4.0为了防止一些malware(恶意软件)不经用户启动就在后台运行,默认安装的程序在用户启动前是完全被系统忽略的,即使程序注册了广播,系统也不会给该程序传递广播。只有程序被用户运行过之后,消息广播才会生效。而且,即使程序已经运行过了,如果被用户force stop(强制停止),又会回到被系统忽略的状态。详情: http://www.mydreamsky.tk/?p=912
- 2楼网友:长青诗
- 2021-02-11 09:06
android 7.0上在frameworks\base\services\core\java\com\android\server\am\UserController.java
接口finishUserUnlocked中发送
- 3楼网友:归鹤鸣
- 2021-02-11 07:47
<action android:name="android.intent.action.PRE_BOOT_COMPLETED"/>通过你的
<intent-filter android:priority="1000"> 启动优先级可以实现 数字越大优先级越高,你的优先级高于launcher,就比launcher高了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯