私はJobSchedulerとJobServiceでWebサービスを呼び出すために定期的な非同期タスクを作成しようとしています。しかし、私の考えは、この作業を1日に1回、いつも同じ時間に実行しようとすることでした。たぶんユーザーがタスクが起動された日付の時間を更新させることさえできます。AndroidのJobInfoビルダーは毎日
JobInfo.Builderはこの可用性をサポートしていますか?私は "setPeriodic"を使っていたので、私はこれが当てはまるとは思わない。
この機能には、AlarmManagerを使用してください。
これが今のサービスを呼び出すコードです:
private void launchCheckShowStatusJob(){
ComponentName serviceComponent = new ComponentName(this, CheckShowsStatusService.class);
JobInfo.Builder builder = new JobInfo.Builder(jobId++, serviceComponent);
builder.setMinimumLatency(0);
builder.setPeriodic(5*1000); //Every 5 minutes, can this be use to set a dayly task?
builder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY); //Require any network
builder.setRequiresCharging(false);
JobScheduler jobScheduler = (JobScheduler) getApplication().getSystemService(Context.JOB_SCHEDULER_SERVICE);
jobScheduler.schedule(builder.build());
}