gpt4 book ai didi

java - Ibinder 和 JobintentService

转载 作者:行者123 更新时间:2023-12-02 04:02:10 24 4
gpt4 key购买 nike

我的问题很简单,但我已经为此苦苦挣扎了很长时间!

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

    @Override
public IBinder onBind(Intent intent) {
return null;
}

不同的是,不可能将该实现与 JobIntentService 一起使用,因为它会抛出 JobServiceContext:绑定(bind)服务超时

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

这是我的 JobIntenteservice

JobBoot.java

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
}}

我该如何解决这个问题?

谢谢

最佳答案

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

public static void enqueueWork(Context context, Intent work) {
enqueueWork(上下文, JobBoot.class, JOB_ID, 工作);
}

以及JobBoot的onHandleWork

   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)
}
}

关于java - Ibinder 和 JobintentService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56728590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com