Работа выполнена, даже если требования не соответствуют
Я использую jobscheduler, чтобы запланировать jobService, вот метод планирования
public static void scheduleUpload(Context context) {
JobInfo.Builder builder =
new Builder(
JOB_ID,
new ComponentName(context, NewJobService.class));
builder.setPersisted(true);
builder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_UNMETERED);
builder.setBackoffCriteria(INITIAL_TIME, JobInfo.BACKOFF_POLICY_EXPONENTIAL);
int result =
((JobScheduler) context.getSystemService(Context.JOB_SCHEDULER_SERVICE))
.schedule(builder.build());
if (result == JobScheduler.RESULT_SUCCESS) {
Log.i(TAG, "Successfully scheduled retry upload");
} else {
Log.e(TAG, "Failed to schedule retry upload, result code " + result);
}
}
Я выполняю некоторую логику повторных загрузок, поэтому я хочу запланировать работу, если загрузка не удалась из-за проблем с сетью. Проблема в том, что задание запланировано, если я отключаю сеть во время загрузки, но оно также выполнит задание, я думаю, что в этом случае задание должно быть запланировано, но оно не должно выполняться, может кто-нибудь помочь с этим?