在Android 12中,可以使用新的JobScheduler API来设置加速通知。以下是示例代码:
在AndroidManifest.xml文件中注册服务:
在活动或服务中创建JobInfo:
JobInfo jobInfo = new JobInfo.Builder(JOB_ID, new ComponentName(this, MyJobService.class)) .setMinimumLatency(0) .setOverrideDeadline(0) .setImportantWhileForeground(true) .setPrefetch(true) .build();
使用JobScheduler将作业提交到系统:
JobScheduler jobScheduler = (JobScheduler) getSystemService(JOB_SCHEDULER_SERVICE); jobScheduler.schedule(jobInfo);
在MyJobService中执行作业:
public class MyJobService extends JobService {
@Override
public boolean onStartJob(JobParameters params) {
// 执行作业
// 通知作业完成
jobFinished(params, false);
return false;
}
@Override
public boolean onStopJob(JobParameters params) {
// 作业被取消
return false;
}
}