首页 > 代码库 > Android应用程序开机开机启动
Android应用程序开机开机启动
有很过情况都需要Android程序开机自启,也就是在手机开机之后马上执行相应的Android程序。
实现的方法就是,在手机开机的时候接受相应的广播,在Android程序中接受相应的广播。
第1步:建立自定义的BroadcastReceiver类。
1 package com.example.autostart; 2 3 import android.content.BroadcastReceiver; 4 import android.content.Context; 5 import android.content.Intent; 6 import android.widget.Toast; 7 8 public class BootupReceiver extends BroadcastReceiver { 9 10 @Override11 public void onReceive(Context context, Intent intent) {12 Toast.makeText(context, "App started", Toast.LENGTH_LONG).show();13 // ---start the main activity of our app---14 15 Intent i = new Intent(context, MainActivity.class);16 i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);17 context.startActivity(i);18 }19 }
第2步:修改AndroidManifest.xml文件。
添加收取到开机广播的权限。
1 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
注册自定义的BroadcastReceiver类。
1 <receiver android:name=".BootupReceiver" >2 <intent-filter>3 <action android:name="android.intent.action.BOOT_COMPLETED" />4 5 <category android:name="android.intent.category.DEFAULT" />6 </intent-filter>7 </receiver>
这样就基本完成了,我在电脑的AVD上实验也成功了。但在我手机上开机没有效果,我在手机管家中也设置了相应的权限,但就是不成功。在我把手机上安全软件卸载后,程序自启动成功了,我分析是安装的手机管家在接受开机广播后,就广播结束了。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。