如何自动重启已终止的服务?

时间:2011-01-12 07:10:39

标签: android service ondestroy

服务被杀后,如何自动重启?

有时甚至没有调用onDestroy()

3 个答案:

答案 0 :(得分:6)

我继承了一个IntentService,所以我必须要温柔。 当我覆盖onStartCommand()但

时,它对我有用
public int onStartCommand(Intent intent, int flags, int startId) {
   super.onStartCommand(intent, flags, startId);
   return START_STICKY;
}

也就是说,让父母做他们应该做的事情并返回START_STICKY。

答案 1 :(得分:3)

覆盖onStartCommand()并将START_STICKYSTART_REDELIVER_INTENT(取决于您的需要)作为返回值。然后,系统将确保重新启动您的服务,直到您明确停止服务为止。

http://developer.android.com/reference/android/app/Service.html#START_REDELIVER_INTENT

http://developer.android.com/reference/android/app/Service.html#START_STICKY

答案 2 :(得分:0)

如果您的服务被终止,系统将尝试稍后重启。 阅读more