Android 如何暂停和恢复服务

Android 如何暂停和恢复服务,android,service,android-lifecycle,resume,Android,Service,Android Lifecycle,Resume,我是一个android初学者,不幸的是,到目前为止,我还没有为我的服务问题找到一个令人满意的答案。我希望你能帮助我。我认为我的问题涉及一项共同的任务 我的情况如下:我已经实现了自己的服务,只需记录GPS位置并将其存储在列表中。一旦服务停止,它就会将数据写入数据库 这很好,但现在服务应该有某种“暂停模式”,停止录制,以后可以继续。实现此功能的最佳方式是什么 到目前为止,我提出了两个(不太令人满意的)想法: 实现我自己的服务生命周期(启动、停止、暂停、恢复)并将GUI绑定到服务。此外,绑定似乎是异步

我是一个android初学者,不幸的是,到目前为止,我还没有为我的服务问题找到一个令人满意的答案。我希望你能帮助我。我认为我的问题涉及一项共同的任务

我的情况如下:我已经实现了自己的服务,只需记录GPS位置并将其存储在列表中。一旦服务停止,它就会将数据写入数据库

这很好,但现在服务应该有某种“暂停模式”,停止录制,以后可以继续。实现此功能的最佳方式是什么

到目前为止,我提出了两个(不太令人满意的)想法:

  • 实现我自己的服务生命周期(启动、停止、暂停、恢复)并将GUI绑定到服务。此外,绑定似乎是异步进行的,这使得更新GUI(启用和禁用启动/停止控件)有点混乱

  • 暂停时,服务将停止,GPS位置将附加到singleton类中的某些列表中。恢复时,服务将再次启动,依此类推。我在这里看到的问题是,应用程序在暂停模式下可能会被终止,并且数据会丢失


  • 我有一个问题,为什么不能使用StartService和StopService逻辑来暂停/恢复服务。每当您想暂停时,请调用stopservice并添加与您计划为暂停执行的逻辑相同的逻辑,因为您知道服务何时必须停止或暂停,因此您应该更好地控制OnDestroy,以了解何时执行停止或暂停逻辑。你能解释一下什么时候应该恢复/暂停吗选项2是正确的。您没有暂停/恢复服务,而是启动和停止服务。如果您需要持久化其数据,那么您需要在服务停止时在服务中执行此操作。感谢您提供选择2的建议。然而,这是否意味着我还必须存储一个标志,指示服务已暂停,以防应用程序在暂停时被终止?@rameshssangili我应该传递什么参数来停止服务功能。我在一个片段中。我尝试了这个getActivity.getApplicationContext().stopService(Intent)。我的意图是什么?Thanx问题解决了我提到了这个问题: