Подтвердить что ты не робот

Android java.lang.IllegalArgumentException: Нет такой службы ComponentInfo JobScheduler

Я попытался создать простую работу JobScheduler просто чтобы посмотреть, как она работает. но я продолжаю получать это исключение во время выполнения, я не могу понять это, поскольку я следовал инструкциям шаг за шагом.

Это мой звонок:

        ComponentName componentName = new ComponentName(getApplicationContext(), TestService.class);
    JobInfo jobInfo = new JobInfo.Builder(1, componentName).setPeriodic(300000)
            .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY).build();

    JobScheduler tm =
            (JobScheduler) getApplicationContext().getSystemService(Context.JOB_SCHEDULER_SERVICE);
    tm.schedule(jobInfo);

TestService не делает ничего, кроме extends JobService.

4b9b3361

Ответ 1

Вам нужно добавить разрешение android.permission.BIND_JOB_SERVICE в свой AndroidManifest.xml

...
<service android:name=".TestService"
     android:permission="android.permission.BIND_JOB_SERVICE"
     android:exported="true"/>
...
</application>

Ответ 2

Попробуйте очистить проект. Это был мой случай.

Ответ 3

Вы добавили сервис в манифест? его высказывание, что вы не объявили свою службу в манифесте

Ответ 4

Моя проблема заключалась в том, что моя Служба была определена как статический внутренний класс. Проблема разрешилась, как только я переместил класс службы в свой собственный файл Java