21

我试图创建一个简单的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

4

3 回答 3

63

您需要将权限添加android.permission.BIND_JOB_SERVICE到您的 AndroidManifest.xml

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

于 2016-03-02T06:59:19.990 回答
2

尝试干净的项目。这是我的情况。

于 2018-01-16T13:23:11.087 回答
0

我的问题是我的 Service 被定义为静态内部类。一旦我将服务类移动到它自己的 Java 文件中,问题就会自行解决

于 2017-08-15T01:01:33.173 回答