首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ibinder和JobintentService

Ibinder和JobintentService
EN

Stack Overflow用户
提问于 2019-06-24 08:11:59
回答 1查看 187关注 0票数 0

我的问题很简单,但我已经纠结了很长时间了!

我有一个调用onBound()方法的绑定服务:

代码语言:javascript
复制
    @Override
public IBinder onBind(Intent intent) {
    return null;
}

不可能将该实现与JobIntentService一起使用,因为它将抛出一个JobServiceContext: Time-Out with binding service

当然,删除覆盖方法不是解决方案,因为我不能删除它...

这是我的JobIntenteservice

JobBoot.java

代码语言:javascript
复制
public class JobBoot extends JobIntentService {

public static final int JOB_ID = 0x01;

public static void enqueueWork(Context context, Intent work) {
    enqueueWork(context, BackgroundService.class, JOB_ID, work);
}

@Override
protected void onHandleWork(@NonNull Intent intent) {
    // your code
}}

我能做些什么来解决这个问题??

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-25 04:23:11

在JobBoot类的静态方法enqueueWork中,它应该使用JobBoot而不是BackgroundService。

public static void enqueueWork(Context context, Intent work) { enqueueWork(context, JobBoot.class, JOB_ID, work); }

在JobBoot的onHandleWork

代码语言:javascript
复制
   protected void onHandleWork(@NotNull Intent intent) {

     // 
     Intent intent = new Intent(this, BackgroundService.class)
     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
         startForegroundService(intent)
     } else {
         startService(intent)
     }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56728590

复制
相关文章

相似问题

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