当Android的service被停止(内存不够、被其他app杀掉)的时候,加入以下代码到你的service里,就可以马上重新启动了。
@Override
public void onDestroy() {
super.onDestroy();
// Restart service in 500 ms
((AlarmManager) getSystemService(Context.ALARM_SERVICE))
.set(AlarmManager.RTC,
System.currentTimeMillis() + 500,
PendingIntent.getService(this, 3, new Intent(this, TaskService.class), 0));
}