JobInrentService在绑定时无法启动我的服务

时间:2019-06-23 19:04:41

标签: java android android-studio

大家好,正如标题中所述,距离我在运行oreo +的设备上启动启动Bacground服务的代码已经无法使用已经过去了一个星期。我总是会收到错误:

JobServiceContetxt: Time-out while trying to bind < here states Service code, service name>, dropping.

所以我处理作业服务的Java文件是:

  • JobBoot.java

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
}}
  • MyJobService.java

清单

Manifest

<service android:name=".MyJobService"
        android:exported="false"
        android:permission="android.permission.BIND_JOB_SERVICE">
        <intent-filter>
            <action android:name="com.firebase.jobdispatcher.ACTION_EXECUTE"/>
        </intent-filter>
    </service>

Java代码

public class MyJobService extends JobService {

private static final String TAG = "MyJobService";


@Override
public boolean onStartJob(JobParameters jobParameters) {
    Log.d(TAG, "Performing long running task in scheduled job");
    // TODO(developer): add long running task here.
    return false;
}

@Override
public boolean onStopJob(JobParameters jobParameters) {
    return false;
}}
  • 然后在我的BootReceiver.java内部,我在onReceive()内部调用JobBoot

    if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
        JobBoot.enqueueWork(context, new Intent());
    

我该如何解决这个奇怪的错误?

我在这里发现的关于我遇到的错误的一切似乎都没有奏效。

我们非常感谢您的帮助!谢谢!

0 个答案:

没有答案