第一步写一个自定义广播 重写onReceive方法
class MyReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
if(Intent.ACTION_BOOT_COMPLETED == intent.action){
val thisIntent = Intent(context,MainActivity::class.java)//需要启动的activity
thisIntent.action="android.intent.action.MAIN"
thisIntent.addCategory("android.intent.category.LAUNCHER")
thisIntent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
context.startActivity(thisIntent)
}
}
}
在Manifest文件里静态注册 上面的广播
<receiver
android:name=".MyReceiver"
android:enabled="true"
android:exported="true">
<intent-filter android:priority="1000">//优先值设置最大
<!--.接收启动完成的广播-->
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
这样当开机完成时 就会收到广播APP启动指定的app