単純な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
以外には何もしません。
権限を追加する必要がありますAndroid.permission.BIND_JOB_SERVICE
をAndroidManifest.xmlに
...
<service Android:name=".TestService"
Android:permission="Android.permission.BIND_JOB_SERVICE"
Android:exported="true"/>
...
</application>
クリーンなプロジェクトを試してください。それは私のケースでした。
私の問題は、サービスが静的内部クラスとして定義されていることでした。サービスクラスをそれ自体のJavaファイルに移動すると、問題は自動的に解決しました