android 开机自启动应用 (详细)
来源:互联网 发布:ch341a编程器1.3破解 编辑:程序博客网 时间:2024/05/16 15:21
android 4.0以后 android就可以实现开机自启动app了。下面我说一下操作原理:
android可以通过 receiver 接收者来接收 android 开机广播实现开机自动。这样我们就有机可乘了,放一个 service 在 receiver 中,然后通过这个服务中写代码来启动app。
下面上代码吧。
1、写出接收广播
public class BootCompletedReceiver extends BroadcastReceiver { //重写onReceive方法 @Override public void onReceive(Context context, Intent intent) { //后边的XXX.class就是要启动的服务 Intent service = new Intent(context, ServiceCrack.class); context.startService(service); Log.v("TAG", "开机自动服务自动启动....."); }}2、在AndroidManifest.xml中注册广播
<receiver android:name=".receiver.BootCompletedReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter></receiver>receiver和service 是和activity同级别的哦 , 别放错地方了
3、编写自己的service
public class ServiceCrack extends Service { public ServiceCrack(){ super(); } public IBinder onBind(Intent arg0){ //这是Service必须要实现的方法,目前这里面什么都没有做//只是在onCreate()方法中打印了一个log便于测试 return null; } public void onCreate(){ super.onCreate(); Intent intent=new Intent(ServiceCrack.this, WelcomeActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); Log.d("TAG2","test service"); }}4、在AndroidManifest.xml中注册服务
<service android:name = ".receiver.ServiceCrack"></service>receiver和service 是和activity同级别的哦 , 别放错地方了
5、当然得有权限了啊 (重要)
<!--开机自启动--><uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
0 0
- android 开机自启动应用 (详细)
- Android 开机自启动应用
- Android 开机自启动应用
- Android 开机自启动应用
- Android 开机自启动应用
- Android 开机自启动应用
- Android开机自启动应用
- Android 开机自启动应用
- Android开机自启动应用
- Android 开机自启动应用
- Android应用开机自启动
- android应用开机自启动&service开机自启动
- android应用开机自启动过程研究(迷惑中)
- Android开机自启动应用开发
- android 开机自启动服务或应用
- Android应用开机自启动失败原因
- Android 定制开机自启动应用
- android开发设置应用开机自启动
- ibatis多对多示例
- 中国剩余定理与扩展 Lucas定理与扩展 学习笔记
- 2016总结
- java零基础入门知识2.1——封装(面向对象的特征之一)
- 用python3+PyQt5改写Python Qt GUI快速编程的第七章实例Find Dialog
- android 开机自启动应用 (详细)
- 详解Linux进程及作业管理
- 学表单的第二天
- 微信小程序api调起微信提供的功能-网络、媒体、文件、数据存储、位置、设备、界面、开发接口
- Markdown常用语法
- CentOS - 添加删除用户
- 软件设计是怎样炼成的(2)——优秀设计从分析需求开始
- 选择器的补充
- 定制jackson的自定义序列化(null值的处理)