服务被杀后,如何自动重启?
有时甚至没有调用onDestroy()
答案 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_STICKY
或START_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。