如何从“设置”中杀死Android服务时重新启动它

时间:2013-09-02 11:52:30

标签: android android-service

我有一个Android应用程序,在主要活动的onCreate方法中启动后台服务。

这是一个轻量级服务,我想让它一直运行。因此,我在START_STCKY服务方法中返回onStartCommand()

当App启动并且服务开始运行时,如果只有“正在运行的服务”从“设置”中被杀死,然后如果App重新启动,则不会调用应用程序的onCreate方法,并且不会重新启动服务

如果我在Activity的onResume()方法中启动我的服务,那么继续检查我的服务是否正在运行似乎不是一个好习惯。

如何处理这种情况?我希望当服务被终止并且应用程序重新启动时,即使应用程序在后台运行,也应该重新启动该服务。

1 个答案:

答案 0 :(得分:1)

我没有使用startService,而是使用BindService,我在应用程序的onCreate中绑定服务,并在应用程序的onTerminate中解除绑定。

这样可以一直运行我的服务,直到应用程序运行,并且App Manager中没有任何选项可以杀死我应用程序中的运行服务。