第三方 app 安装后,android.intent.action.BOOT_COMPLETED 无法启动应用

实现android11开机自启动 Android11开机自启动 阅读详情

网上有已经有人解释了原因 参考 https://blog.youkuaiyun.com/zhouzhengting1/article/details/50459431

因为我们发送广播

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED

但是intent 默认会添加 FLAG_INCLUDE_STOPPED_PACKAGES和FLAG_EXCLUDE_STOPPED_PACKAGES ,来标识一个intent是否激活处于“stoppedstate”的应用。

这就造成因为权限问题,当第一次安装的时候,不会开机自启动

三种原因,以及解决方案

  1. 把应用push 到 system/app目录,前提是能够adb root;adb remount
  2. 安装后 让应用手动点击一次,或者通过其他应用触发一次启动,以后就可以开机自启动
  3. sd卡中应用不会收到开机启动广播,因为现在手机很少有sd卡,不关心了
安卓App自启动全解析:从BOOT_COMPLETED到WorkManager的兼容性实战 在Android应用开发中,后台任务管理与进程保活是常见的工程挑战,尤其涉及设备重启后的自动启动场景。其核心原理在于应用如何响应系统事件并恢复执行,这直接关系到用户体验与系统资源管理的平衡。从技术价值看,可靠的自动启动机制能确保关键服务(如数据同步、状态监控)的连续性,是即时通讯、安全防护、系统工具等应用的基石。实现方式上,开发者通常需要处理不同Android版本的兼容性问题,例如利用BroadcastReceiver监听BOOT_COMPLETED系统广播,或采用JobScheduler、WorkMana 阅读详情

相关推荐

Android开机自启与霸屏启动:从BOOT_COMPLETED到系统Launcher的完整指南

在Android应用开发中,开机自启动是一个常见但复杂的工程需求,尤其在信息发布终端、工业控制设备等场景中,实现应用开机后自动运行并全屏显示(即“霸屏”)至关重要。其核心原理涉及Android系统的应用启动层次与权限机制,从普通应用层到系统应用层,不同层级拥有不同的能力边界。普通应用通过BroadcastReceiver监听BOOT_COMPLETED广播实现自启,但受Android版本迭代(如Android 8.0的后台限制、Android 10的Activity启动限制)和厂商ROM定制的影响,稳定性面

weixin_33806914的博客 370

Android开机广播android.intent.action.BOOT_COMPLETED

1. 说明     Android手机开机后,会发送android.intent.action.BOOT_COMPLETED广播,监听这个广播就能监听开机。 2. 代码 uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> receiver android:name="com.examp

学无止境~ 1万+

在ros里给机械臂加上夹爪和底盘后,控制真实机械臂

使用ur3_bringup 可以连接真实机械臂 使用官方的ur3_moveit_planning_execution.launch 可以对机械臂 moveit规划。 但是只有机械臂,没有夹爪。 官方如图: 我把原来的ur3_moveit_config 复制出来,修改 然后把ur3.xacro 等模型文件复制出来修改,修改完之后,有了夹爪,有了底盘。 规划组什么的使用moveit setup assistant 配置过了。 在rviz中可以笛卡尔空间规划了。 ...

超级菜 2716

Android 屏幕唤醒 + 屏幕解锁 + 开机广播android.intent.action.BOOT_COMPLETED

Android手机开机后,会发送android.intent.action.BOOT_COMPLETED广播 流程:广播接收器 (屏幕唤醒 + 屏幕解锁 + 接收开机广播)附全源码

weixin_51522235的博客 3230

【Qt-4】QT基于qhttp-server搭建http服务器

QT搭建http服务器

WXG1011的博客 5712

AGX Orin设计-外围电路设计之一

AGX ORIN是英伟达Jetson系列中算力规格最高端的模组,其高达200TOPS/275TOPS的算力可以为各类场景提供澎湃的算力支持,本篇文章针对AGX ORIN的常规外围电路设计做分析描述。

zhiyuchenkeji的博客 4479

屏幕唤醒 + 屏幕解锁 + 开机广播android.intent.action.BOOT_COMPLETED

preferExternal:将程序安装在外部存储介质上,但是系统不保证程序一定会被安装到外部存储介质上.当外部存储介质不可以或空时,程序将被安装到内存中.程序使用了forward-locking机制时也将被安装到内存中,因为外部存储不支持此机制.程序安装后,用户可以自由切换程序应该在外部还是内部存储介质上.Android API Level8以上的时候,程序可以安装在SD卡上。internalOnly:默认值.当设置为该值时,程序只能被安装在内存中,如果内存为空,则程序将不能成功安装.

chuyouyinghe的专栏 975

告别“为了写而写”:GJB438C-2021新规下,软件文档如何真正为项目服务?

本文深入解析GJB438C-2021新规如何重构软件文档的实战价值,通过文档体系瘦身、流程再造和敏捷化实践,显著提升军工软件项目的效率。新标准删除30%冗余文档,引入动态编制法和轻量化模板,使文档编制工作量降低37%,关键路径周期缩短15%。

weixin_30765577的博客 447

android.intent.action.BOOT_COMPLETED 被延迟接收问题

最近在系统开发中遇到某个系统服务接收 android.intent.action.BOOT_COMPLETED 广播被延迟接收的问题。 具体表现为开机后此服务过了20多秒才被启动,导致开机过慢。 在网上找了一下,没有找到比较好的解决办法,因此决定自己跟一下。 首先,找到发送这个广播的代码,位于 android/frameworks/base/services/java/com/android

Cool073的专栏 5059

Node-RED教程(一):Node-RED的介绍与安装

最新最全的Node-RED,node-red教程都在这里。 本篇介绍node-red的安装。使用docker 安装node-red

知无涯 3万+

基于STM32的智能手环心率血氧体温监测系统(完整设计)

本文设计了一款基于STM32单片机的多功能智能手环系统,集成心率、血氧、体温实时监测功能,并支持运动数据管理与健康预警。系统采用MAX30102传感器实现心率血氧监测,DS18B20检测体温,ADXL345进行步数统计,通过OLED屏幕显示数据。研究通过低功耗硬件选型与模块化软件架构设计,实现了多参数同步采集、阈值预警及蓝牙数据传输功能。测试结果表明,系统在健康监测精度、续航能力及用户交互体验上均达到预期目标,为个人健康管理提供了实用解决方案。

3254968421的博客 701

android应用开机自启动及失败原因(BOOT_COMPLETED应用)

Menu 首页 源码解析 Android Java 开源代码 性能优化 关于 Trinea 03/25 2013 Android应用如何开机自启动、自启动失败原因 本文主要介绍Android应用如何开机自启动、自启动失败的原因、adb命令发送BOOT_COMPLETED。 问题:应用程序是否可以在安装后自启动,没有ui的纯service应

u013524014的专栏 3813

华为OD机考双机位C卷 - 补种未成活胡杨 (Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 补种未成活胡杨(OD上机考试双机位C卷)。提供在线OJ刷题。Java、C++、Python、GO语言、C语言、JavaScript题解,并提供完整思路讲解。

算法大师! 2418

Android 应用自动启动的两种方法(开机自启动 与 另一个应用广播通知启动)

最近遇到这么个问题: 在一个移动设备中安装了多个应用程序,其中自己开发的应用需要实现开机自启动这么个功能; 为了实现自己应用能够实现自动启动,最初的思路是监控设备的开机完成这类的广播信号;   思路一(开机自启动): 注册一个静态广播去监听开机启动完毕的广播,然后在接听到开机广播完毕后启动|Activity或者Service; 其中广播监听器中内容为: public class B...

c20081052的专栏 4万+

MCP开发实战:基于openEuler系统MCP插件的开发、测试与发布全流程

MCP开发实战:基于openEuler系统MCP插件的开发、测试与发布全流程

jks212454的博客 555

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android开机自启动app

android开机自启动app 转自:http://my.oschina.net/jgy/blog/135858 前言: 有些时候,应用需要在开机时就自动运行,例如某个自动从网上更新内容的后台service。怎样实现开机自动运行的应用?在撰写本文时,联想到高焕堂先生以“Don't call me, I'll call you back!”总结Android框架,真是说到点子上

jesse的博客 3万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

android 广播自启动,关于BOOT_COMPLETED广播-自启动

文章摘要:1、BOOT_COMPLETED在ActivityManagerService中由系统发送。2、应用可以监听该广播,成为自启动权限,但是这样会有很多缺点,最大的缺点就是拖慢开机进度,影响用户体验。3、开机状态会sys.boot_completed,可以通过该属性状态得到开机状态。一、BOOT_COMPLETED广播是什么?1、BOOT_COMPLETED是系统在开机加载完毕后发送的。如下...

weixin_39751327的博客 4782

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

android开机自动启动app,android如何实现开机自动启动Service或app

1.今天我们主要来探讨android怎么让一个service开机自动启动功能的实现。Android手机在启动的过程中会触发一个Standard Broadcast Action,名字叫android.intent.action.BOOT_COMPLETED(记得只会触发一次呀),在这里我们可以通过构建一个广播接收者来接收这个这个action.下面我就来简单写以下实现的步骤:2. 第一步:首先创建一...

weixin_35636570的博客 7461

Android 监听开机广播实现应用开机自启动

应用开机自启动的原理是监听开机广播android.intent.action.BOOT_COMPLETED,然后在BroadcastReceiver中打开应用 实现BroadcastReceiver 首先实现一个BroadcastReceiver,该广播接收者监听"android.intent.action.BOOT_COMPLETED"广播,当接收到该广播时,打开该应用的启动页面。 pu...

野猿新一 9191

未启动的应用无法监听到系统广播

Q:在 3.1 版本以后,新安装而从未启动过的app不能收到系统的广播(启动完成,网络状态变化之类的); 解决方案: 1. 将app做成系统应用,直接安装在 system/app 目录下 2. 通过第三方应用,发送带 FLAG_INCLUDE_STOPPED_PACKAGES 的广播给stop状态的自己 下文转载自 http://www.cnblogs.com/fa

张小贝的博客 3245

Android7.0设备在程序安装之后无法接收android.intent.action.BOOT_COMPLETED广播

Android程序接收设备开机广播的流程如下: 1、定义一个broadcastReceiver,在AndroidManifest.xml中配置intent-filter <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> 2、增加接收开机广播的权限 <!-- 增加接收系统广播权限 --> <use

chali1314的博客 2580

Android4.2中应用接收开机广播(android.intent.action.BOOT_COMPLETED)失败的原因

android4.2系统中是在frameworks/base/services/java/com/android/server/am/ActivityManagerService.java的

Polynesia的专栏 2万+

Android Intent Action 大全

ACTION_AIRPLANE_MODE_CHANGED Broadcast Action:用户打开或关闭飞行模式。一个或多个广播会打开或关闭。这个intent会携带下面的附加值: state:一个boolean值,指明飞行模式是否打开。如果是true,cell radio以及其他一些例如蓝牙,wifi的广播会关闭。 注:这是一个只有系统可以发送的受保护的intent。 常量值:"android.

ygc87的专栏 1万+

Android应用接收开机广播(android.intent.action.BOOT_COMPLETED)失败的原因

Android应用接收开机广播(android.intent.action.BOOT_COMPLETED)失败的原因就在于安装应用后没有先启动。应用需要在安装后启动一次,才能正常接收开机广播。经过验证发现,系统级别的应用,即使不启动,也可以正常接收开机广播。这里的系统级别是指放在/system/app/目录下的应用。 所以对于android3.1以后得系统版本,如果要

嵌入式软件开发交流 2万+

Android开机自启动实现:从BOOT_COMPLETED广播到WorkManager的兼容方案

在Android应用开发中,后台任务管理与系统事件响应是构建稳定应用的基础能力。BroadcastReceiver作为Android四大组件之一,通过订阅-发布机制实现了应用与系统间的松耦合通信,其静态注册方式允许应用在未启动时接收系统广播。随着Android系统版本迭代,后台限制策略不断收紧,从Android 8.0开始对后台服务执行严格管控,这推动了JobScheduler等智能调度框架的普及。WorkManager作为Jetpack组件,封装了JobScheduler、GcmNetworkManage

weixin_33924220的博客 597
上一篇: Android adb 使用总结 (调试专用)
下一篇: 深入理解git 使用
杨尘心
博客等级 码龄10年 122粉丝 88原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值