- 添加权限
在android/app/src/main/AndroidManifest.xml文件中添加权限
<!-- 配置开机启动权限-->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<!--悬浮窗-->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
- 注册广播接收器
在android/app/src/main/AndroidManifest.xml文件中注册广播接收器,添加如下代码
<receiver
android:name="com.xxx.xxx.StartReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.WALLPAPER_CHANGED"/>
</intent-filter>
</receiver>
- 实现广播接收器
创建一个名为BootReceiver的广播接收器类,并在onReceive方法中启动
package com.xxx.xxx;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class StartReceiver 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 mainActivityIntent = new Intent(context, MainActivity.class); // 要启动的Activity
mainActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(mainActivityIntent);
}
if(intent.getAction().equals("WALLPAPER_CHANGED")){
System.out.println("=============");
}
}
}