创建BootCastReceiver
package com.example.bootstartapp;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class BootCastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction() == Intent.ACTION_BOOT_COMPLETED){
Intent intent2 = new Intent(context, MainActivity.class);
//Activity是基于栈的,收到广播时需要添加 “FLAG_ACTIVITY_NEW_TASK”标识告诉系统新建一个任务栈并开启app
intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent2);
}
}
}
清单文件,
android.intent.action.BOOT_COMPLETED接受开机启动广播
<receiver android:name=".BootCastReceiver">
<intent-filter >
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
//添加权限
<uses-permission android:name="android.permission.RECEIVER_BOOT_COMPLETED"/>
完工@!