我正在开发一个获取reddit.com文章的应用程序。我有一项每2小时更新一次的服务。
用户可能每天2-3次打开此应用程序。我认为将服务保持在后台是不好的。
我认为的是在应用程序启动时启动服务,并且在应用程序正在运行(或最近的应用程序列表中(时,该服务将运行。用户杀死/关闭应用程序时,我正在停止服务[IM停止警报器]。
最佳解决方案是使用警报管理器并在X时间之后调用意图服务,并获取更新的数据并将其存储在本地DB中。意图服务不需要停止它始终会自动停止,即使您的任务完成错误
如果您使用意图服务,则无需停止,它会在下班后自动停止。
IntentService是按需处理异步请求(表示为意图(的服务S的基类。客户通过启动服务(意图(呼叫发送请求;该服务是根据需要启动的,依次使用工作人员线程处理每个意图,并在工作用尽时停止自身。