我正在尝试使用startService()
启动和停止简单服务的简单Android应用。我注意到每次手动终止应用程序进程(通过关闭应用程序),都会创建另一个服务实例。
换句话说,我创建的服务没有被销毁,并且创建了一个额外的服务。我可以看到onDestroy()
没有被调用,onCreate()
& onStart()
再次被召唤
为什么?我该怎样预防呢?您可以在此示例中看到我使用的源代码:Source Code
答案 0 :(得分:1)
如果您使用Service
开始Context.startService()
而Service
从其START_STICKY
返回onStartCommand()
,那么系统正在期待Service
通过调用Context.stopService()
或Service
本身调用stopSelf()
的内容明确停止。当您使用“最近”屏幕时,“轻扫”"你的应用程序,你强行杀死进程但没有明确停止Service
。