Service保活

减少被杀的可能性

提升Service的优先级

intent-filter中设置android:priority=1000

提升Service进程的优先级

onStartCommand中使用setForeground将service放到前台

Application加上Persistent属性

  • android:persistent="true"

杀死后重启

START_STICKY

onStartCommand方法的返回值设置为START_STICKY

  • START_STICKY被杀后,不带intent重启
  • START_NOT_STICKY被杀后不重启
  • START_REDELIVER_INTENT被杀后重启,带上最后一次请求的Intent

onDetroy中发送重启指令

在Service的onDestroy中发送一个私有广播来重启service,或者直接重启service

监听系统广播判断Service状态

设置一个广播监听,监听系统广播,在监听处理中查看service状态

将App设置为系统应用

你可能感兴趣的:(Service保活)