android开机自动启动app,android如何实现开机自动启动Service或app
1.今天我们主要来探讨android怎么让一个service开机自动启动功能的实现。Android手机在启动的过程中会触发一个Standard Broadcast Action,名字叫android.intent.action.BOOT_COMPLETED(记得只会触发一次呀),在这里我们可以通过构建一个广播接收者来接收这个这个action.下面我就来简单写以下实现的步骤:
2. 第一步:首先创建一个广播接收者,重构其抽象方法 onReceive(Context context, Intent intent),在其中启动你想要启动的Service或app。
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
public class BootBroadcastReceiver extends BroadcastReceiver {
//重写onReceive方法
@Override
public void onReceive(Context context, Intent intent) {
//后边的XXX.class就是要启动的服务
Intent service = new Intent(context,XXXclass);
context.startService(service);
Log.v("TAG", "开机自动服务自动启动.....");
//启动应用,参数为需要自动启动的应用的包名
Intent intent = getPackageManager().getLaunchIntentForPackage(packageName);
context.startActivity(intent );
}
}
第二步:配置xml文件,在receiver接收这种添加intent-filter配置
第三步:添加权限
启动APP:
因为做一个hotkey的项目,其中有几个快捷键需要启动系统自带的browser和email。因为刚刚开始学习android,在网上找到启动browser和email的方法都是利用ACTION_VIEW和SENDTO这样的intent去启动browser和email.问题来了:
1.如果是这样的话,启动browser需要自己预设一个网址,然后调用浏览器打开改网址。
2.启动email,也是需要自己设定一个账户地址,才能调用email去发送。
但是我只是需要打开程序,不想设定死这些data。所以想用应用程序本身的intentfilter中的action,不方便了。想到我想要的功能就只是简单代替了点击图标来启动程序,因此从laucher中入手应该可以。去调用onClick中的方法就行了。
最后实现如下:
PackageManager pm = getPackageManager();
Intent intent = pm.getLaunchIntentForPackage("packagename");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//只要是调用系统的app,就要加上这个flag,否则会抛出异常。
startActivity(intent);
这样不用指定 action就可以实现调用任何一个自带app了。
android开机自动启动app,android如何实现开机自动启动Service或app相关推荐
- android如何实现开机自动启动Service或app
为什么80%的码农都做不了架构师?>>> 第一步:首先创建一个广播接收者,重构其抽象方法 onReceive(Context context, Intent intent),在 ...
- android开机自动启动app,Android实现开机自动启动Service或app的方法
本文实例讲述了Android实现开机自动启动Service或app的方法.分享给大家供大家参考,具体如下: 第一步:首先创建一个广播接收者,重构其抽象方法 onReceive(Context cont ...
- android 服务开机启动慢,Android App启动慢原因
一.App启动方式: 冷启动(Cold Start).温启动(Warm start).热启动(Hot start) 1. 冷启动(Cold Start):是指App启动后第一次运行,获取App进程杀 ...
- 升级后开机就提示“android.process.acore”停止执行 --分析 解决方式
OTA升级的,升级引发的全部问题都是能够解释的,有的能解决,有的不能解决. 一个项目报了这个问题. 升级后开机就提示"android.process.acore"停止执行 抓取 a ...
- Android如何配置init.rc中的开机启动进程(service)【转】
本文转载自:http://blog.csdn.net/qq_28899635/article/details/56289063 开篇:为什么写这篇文章 先说下我自己的情况,我是个普通的大四学生,之前在 ...
- android系统关机广播,Android开机广播和关机广播
android开机广播:代码如下: import android.content.BroadcastReceiver; import android.content.Context; import a ...
- Android权限系统(一):开机获取权限信息
一.SystemConfig的整机权限信息 Android在SystemConfig的构造函数中会通过读取相关的文件来加载整机的权限信息.这些文件是{partition}/etc/permissi ...
- android 7.1 刷机后第一次开机概率性缓慢(2~4分钟)--ANR
引言 开机时启动客户定制服务,概率性导致开机非常缓慢,正常开机50秒左右,异常开机达到2~4分钟 记录问题分析过程. 分析过程 废话不多说,直接上日志,定位到异常日志位置 12-27 17:26:02 ...
- 开机动画启动 android 9.0
android开机动画分为正常开机动画启动和休眠唤醒后启动开机动画 1.正常开机动画启动: 正常开机动画是在 SurfaceFlinger.java的init方法里面启动的: 主要是设置ctl.sta ...
- android的启动动画,Android系统开机动画的一生
前言 在上篇文章[Android从上电到加载launcher,都发生了啥]中,简单介绍了Android系统从上电到加载launcher的流程,但比较粗略,特别是init之后,开机动画如何启动,又如何结 ...
最新文章
- 复化梯形公式,Newton-Cotes公式,变量代换后的复化梯形公式,Gauss-Legendre公式,Gauss-Jacobi公式插值积分的精确度比较
- 第14条:理解“类对象”的用意
- ubuntu的apache配置https
- 现代软件工程系列 结对编程 (II) 电梯调度程序
- android移除动画,android – 如何使用ObjectAnimator删除动画的慢端?
- java中“53”个关键字(含2个保留字)
- DPDK如何释放大页内存(巨页内存hugepage)
- 强大的反编译软件Hopper Disassembler for Mac控制流程图详解
- C语言输出AB9798,c语言基础练习习题及答案.doc
- 终极算法——第二章:终极算法
- hdu 5296 Annoying problem(LCA)
- 七牛云 播放的时候显示错误信息:视频解析异常 请重试
- mysql存储表情、微信小程序存储表情
- [论文阅读] (08) NDSS2020 UNICORN: Runtime Provenance-Based Detector for Advanced Persistent Threats
- SpecCPU2017 测试cpu性能
- TI-RTOS学习笔记(三)—— 驱动程序框架
- jenkin构建报错信息及解决方案
- c语言format是什么,初始化C盘时format c:/s 中/s是什么意思啊?
- Swagger3 API接口文档规范课程(Java1234)(内含教学视频+源代码)
- python四叶玫瑰数判断_四叶玫瑰数
热门文章
- java运行 .class文件_运行java的class文件方法详解
- 大数据之路阿里巴巴实践
- dl388g8 惠普 linux 网卡驱动,hp dl388 gen9驱动下载
- 《数字电路与逻辑设计》笔记及经典问答题
- Windows 95 被做成了一款 app,我们在 MacBook 上体验了它
- 【Java工具类】非对称加密之RSA算法工具类(分段处理)
- fedora mysql添加密码_Fedora14下 mysql更改密码
- python可以下载百度文库_用python下载百度文库的代码
- 贵州最新建筑八大员(土建)模拟真题集及答案解析
- 40个增长和管理你的WordPress网站的有用博客工具