Android 实现监听开机启动开启后台服务,并实现自动重启。
16lz
2021-01-23
1.创建广播监听器,继承BroadcastReceiver
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.util.Log;public class BootBroadcastReceiver extends BroadcastReceiver {static final String ACTION = "android.intent.action.BOOT_COMPLETED";@Overridepublic void onReceive(Context context, Intent intent) {if (intent.getAction().equals(ACTION)) {Intent service = new Intent(context, BootService.class);context.startService(service);}}}2.在AndroidManifest.xml中注册广播接收器,并设置action为android.intent.action.BOOT_COMPLETED,这样项目就能监听开机事件。
<receiver android:name="com.huahu.bootstart.BootBroadcastReceiver" > <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver>
3.创建 BootService服务,重写onStartCommand方法,设置flags,这样当服务关闭时,能够自动重启服务。
@Overridepublic int onStartCommand(Intent intent, int flags, int startId) {flags = START_STICKY;return super.onStartCommand(intent, flags, startId);}
更多相关文章
- Android广播接收器Broadcast Receiver-android学习之旅(十二)
- Android 广播接收器注册与注销源码分析
- [原]Android应用程序注册广播接收器(registerReceiver)的过程分析
- Android广播接收器BroadcastReceiver——学会这一篇文章就够了
- android添加监听器
- [Android]在Avtivity中注册监听器
- Android中的HashMap原理实践探索,重写equals(),为什么重写hashCode
- Android中重写onBackPressed()方法实现双击退出
- 关于android的广播接收器(1)—基础篇