【Android】设置程序开机自启动
Android系统开机后,系统会发送一个“已开机”的广播。我们想要让自己的程序开机自启动就得接收这个广播。
我们分为三步实现:
1、创建广播接收器类
public class BootReceiver extends BroadcastReceiver {
//android.intent.action.BOOT_COMPLETED 是已开机广播对应的字符串
static final String ACTION = "android.intent.action.BOOT_COMPLETED";
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals(ACTION)) { //判断收到的广播是否是系统已启动的广播
Intent newIntent = new Intent(context, MainActivity.class);
newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(newIntent);
}
}
}
2、在AndroidManifest.xml清单文件中,添加接收系统启动完成广播的权限
<!--.接收启动完成的广播权限-->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
3、在清单文件的<application></application>中配置广播接收器
<receiver
android:name=".BootReceiver"
android:enabled="true"
android:exported="true">
<intent-filter android:priority="1000">
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
</intent-filter>
</receiver>
到这里就完成了程序的开机自启动。
|