Android JobIntentService-onStartCommand与onHandleWork

Android JobIntentService-onStartCommand与onHandleWork,android,service,android-8.0-oreo,android-intentservice,jobintentservice,Android,Service,Android 8.0 Oreo,Android Intentservice,Jobintentservice,我目前正在从服务类扩展到我的定制服务实现。作为Android-O迁移的一部分,我想使用JobIntentService 目前我所有的逻辑都在服务的onStartCommand方法中 但是,根据JobIntentService,我应该对我的逻辑部分使用onHandleWork方法 声明,进程在作为预O服务运行时启动命令,将它们排队等待稍后在onHandleWork(Intent)中调度 所以,我的问题是,我是否需要保留onStartCommand和onHandleWork两种方法?我是否需要在这两

我目前正在从服务类扩展到我的定制服务实现。作为Android-O迁移的一部分,我想使用JobIntentService

目前我所有的逻辑都在服务的onStartCommand方法中

但是,根据JobIntentService,我应该对我的逻辑部分使用onHandleWork方法

声明,进程在作为预O服务运行时启动命令,将它们排队等待稍后在onHandleWork(Intent)中调度

所以,我的问题是,我是否需要保留onStartCommand和onHandleWork两种方法?我是否需要在这两种方法中编写相同的逻辑

简单的手工会有用吗

请澄清

目前,我所有的逻辑都在服务的onStartCommand方法中

现在还不清楚你为什么会有这项服务。您的服务需要分叉一个后台线程,这意味着创建其他类(例如,
thread
Runnable
)的子类

我是否需要保留onStartCommand和onHandleWork两种方法?我是否需要在这两种方法中编写相同的逻辑

如果您使用的是
JobIntentService
,则将所有内容都放在
onHandleWork()
中。这是与
IntentService
中的
onHandleIntent()
的直接类似-它将在后台线程上调用,如果在方法返回时没有更多的工作要做,服务可能会消失。

您需要使用 排队工作(@NonNull上下文,@NonNull类cls,int-jobId, @非空(工作)

从JobIntentService启动作业