首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何取消JobIntentService

如何取消JobIntentService
EN

Stack Overflow用户
提问于 2017-08-28 15:10:25
回答 2查看 7.1K关注 0票数 12

我怎样才能取消JobIntentService?除了JobSheduler API和Context#stopService(...)方法之外,我在文档中没有看到这样做的方法,我不确定这是否是正确的方法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-07 13:34:00

JobIntentService只将IntentService引入到安卓系统中,这对后台服务更加严格。它的运行方式就像旧的IntentService一样,运行在拥有较旧版本安卓系统的设备上。

IntentService 从未被设计为取消,因此缺乏任何取消JobIntentService的API。

因此,JobIntenService 只应该用于不需要取消的工作。注意到,JobIntentService仍然可以用于可能失败的工作,并因此被中止。

可以取消的工作应在以下两种方法中执行:

  • 短期工作的Activity (或其ViewModel)
  • JobService (如果minSdk为21,则使用Firebase作业调度程序或作业调度程序)
  • 自定义前台服务
票数 9
EN

Stack Overflow用户

发布于 2017-11-04 20:20:22

在Android8.0之前,JobIntentService是作为一个IntentService实现的。在IntentServiceonHandleIntent方法完成之前,它不会通过某些意图操作停止或接受任何其他请求。除非任务是stopService(),否则不会调用它,当任务是finished.And时,会自动调用它。这是IntentService的一个特性,但是这里已经回答了一个类似的问题,提到IntentServices,希望它能有所帮助。

回答问题

还可以查看android开发者

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45922178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档