Imr*_*ifi 5 java android job-scheduling
Job Schedular设置如下
ComponentName mServiceComponent = new ComponentName(context, TestJobService.class);
JobInfo.Builder builder = new JobInfo.Builder(jobId, mServiceComponent);
builder.setPeriodic(3 * 60 * 1000);
builder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_NONE);
builder.setRequiresDeviceIdle(false);
builder.setRequiresCharging(false);
builder.setPersisted(true);
JobScheduler jobScheduler = (JobScheduler) ChaseForceApplication.getAppContext().getSystemService(Context.JOB_SCHEDULER_SERVICE);
jobScheduler.schedule(builder.build());
Run Code Online (Sandbox Code Playgroud)
TestJobService类是这样的:
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public class TestJobService extends JobService {
@Override
public boolean onStartJob(JobParameters params) {
Utility.writeToTheFile(ChaseForceApplication.getAppContext(), "\n\n Job Scheduler StartJob with jobid="+params.getJobId()+" set at " + new Date().toString());
sendBroadcast(new Intent(this, OnSingleAlarmReceiver.class));
return false;
}
@Override
public boolean onStopJob(JobParameters params) {
Log.i(ChaseForceApplication.TAG, "on stop job: " + params.getJobId());
Utility.writeToTheFile(this, "on stop job: " + new Date().toString());
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
它在大多数设备上都可以使用,即使在其他小米手机中也可以使用,但在小米Redmi 3S中则无法使用。
Job Schedular是否需要任何设置才能在该设备上工作?
小米MIUI操作系统似乎不允许JobScheduler运行https://web.archive.org/web/20171001070316/http://c.mi.com/thread-8779-1-1.html
| 归档时间: |
|
| 查看次数: |
1086 次 |
| 最近记录: |