我有一个Activity应用程序启动一个Service并绑定它。 我希望服务在退出活动后继续运行。
现在我正在做一个stopService然后是一个unbindService。我的假设是我确实需要解除绑定但是为了让它继续运行我不应该(显然)调用stopService,对吗?
我只是想了解长期运行服务的正确服务管理技术。
答案 0 :(得分:0)
可以从服务文档中找到答案:
请注意,如果停止的服务仍然具有绑定到它的ServiceConnection对象并且设置了BIND_AUTO_CREATE,则在删除所有这些绑定之前不会销毁它。有关服务生命周期的更多详细信息,请参阅服务文档。
要清理您的服务,最好取消绑定。您始终可以使用具有Context.startService()的其他意图重新启动它。根据你如何使用它,最好启动服务一段时间,做一些事情,停止它(你甚至可以使用stopSelf的调用来执行此操作),然后当你有更多的工作时再次重新启动它做 - 或获得另一个意图。