PeriodicWorkRequest を使用して、15 分ごとにタスクを実行しています。この定期的な作業依頼が以前にスケジュールされているかどうかを確認したいのですが。そうでない場合は、スケジュールします。
if (!PreviouslyScheduled) {
PeriodicWorkRequest dataupdate = new PeriodicWorkRequest.Builder( DataUpdateWorker.class , 15 , TimeUnit.MINUTES).build();
WorkManager.getInstance().enqueue(dataupdate);
}
以前、JobScheduler を使用してタスクを実行していたときは、
public static boolean isJobServiceScheduled(Context context, int JOB_ID ) {
JobScheduler scheduler = (JobScheduler) context.getSystemService( Context.JOB_SCHEDULER_SERVICE ) ;
boolean hasBeenScheduled = false ;
for ( JobInfo jobInfo : scheduler.getAllPendingJobs() ) {
if ( jobInfo.getId() == JOB_ID ) {
hasBeenScheduled = true ;
break ;
}
}
return hasBeenScheduled ;
}
スケジュールされた/アクティブな作業要求を見つけるのに役立つ、作業要求用の同様のモジュールを構築するのに助けが必要です。