如何自动重启被杀死的服务?
当一个服务被杀死后,如何自动重新启动它?
有时甚至不调用 onDestroy()
When a service has been killed, how to restart it automatically?
sometimes without even calling onDestroy()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我继承了一个IntentService,所以我必须温柔。
当我覆盖 onStartCommand() 时,它对我有用,但
也就是说,让父级做它应该做的事情并返回 START_STICKY。
I inherited an IntentService, so I had to be gentle.
It worked for me when I overrode onStartCommand() but
That is, let the parent do what it should and return START_STICKY.
覆盖
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
Overrides the
onStartCommand()
and giveSTART_STICKY
orSTART_REDELIVER_INTENT
(depends on your needs) as the return value. The system will then make sure to restart your service until you explicitly stop the service.http://developer.android.com/reference/android/app/Service.html#START_REDELIVER_INTENT
http://developer.android.com/reference/android/app/Service.html#START_STICKY
如果您的服务被终止,系统稍后会尝试重新启动它。
阅读更多信息。
If you have your service killed, the system will try to restart it later.
Read more.