我们在开发的过程中,可能都会遇到要求开机自动启动一个APP这样的需求,于是就有了本文,看下文↓
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
public class BootBroadcastReceiver extends BroadcastReceiver {
static final String ACTION = "android.intent.action.BOOT_COMPLETED";
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ACTION)) {
Intent intent = new Intent(context, MainActivity.class); // 要启动的Activity
//1.如果自启动APP,参数为需要自动启动的应用包名
//Intent intent = getPackageManager().getLaunchIntentForPackage(packageName);
//下面这句话必须加上才能开机自动运行app的界面
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//2.如果自启动Activity
//context.startActivity(intent);
//3.如果自启动服务
context.startService(intent);
}
}
}
<receiver android:name="BootBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</receiver>
ok,很so easy 吧,一切都搞定了,赶快重启一下手机去体验吧。。
本文首发于我的微信公众号,更多干货文章,请扫描二维码订阅哦: