JobService уничтожен до завершения работы
Я использую JobScheduler для выполнения задачи. В конкретном устройстве с API 22 я сталкиваюсь с проблемой, что иногда onDestroy() службы заданий вызывается сразу после onStart (), а иногда вызывается onStop () перед завершением задачи, в то время как в других устройствах работает нормально
Я использую приведенный ниже код для создания службы работы.
JobScheduler jobScheduler = (JobScheduler) mContext.getApplicationContext().getSystemService(Context.JOB_SCHEDULER_SERVICE);
if (jobScheduler != null) {
try {
jobScheduler.schedule(ConeAppJobService.createJobInfo(mContext.getApplicationContext(), account));
} catch (IllegalArgumentException e) {
CrashLogger.logException(e);
}
}
public static JobInfo createJobInfo(@NonNull Context context, Account account) {
JobInfo.Builder builder = new JobInfo.Builder(JobServiceConstant.JobID.CO_JOB_ID, new ComponentName(context, ConeAppJobService.class))
.setRequiredNetworkType(JobInfo.NETWORK_TYPE_NONE)
.setOverrideDeadline(0);
return builder.build();
}
Я возвращаю истину из onStart () и onStop () из JobService. И создаю поток внутри onStart () для выполнения задачи.