Expedidor de Trabalhos Firebase não agendando trabalhos em dispositivos OREO

Tenho um expedidor de job da base de firma que está agendado para ser executado sempre que a rede mudar, o trabalho está funcionando perfeitamente em um dispositivo marshmallow (nível 23 da API), mas o mesmo código quando executado não está agendando trabalhos em um dispositivo oreo (nível 26 da API)

Aqui está o meu código de serviço de emprego:

public class MyJobService extends JobService {


@Override
public boolean onStartJob(JobParameters job) {

    Log.d("Executing","Job");
    Realm realm = Realm.getDefaultInstance();

    RealmResults<JsontoSend> realmResults = realm.where(JsontoSend.class).findAll();
   if(!realmResults.isEmpty()) {
        for (JsontoSend jsontoSend : realmResults) {
            final Intent intent = new Intent(getApplicationContext(), PostUploadIntentService.class);
            intent.putExtra("object", jsontoSend.getJson());
            new Thread(new Runnable() {
                @Override
                public void run() {
                    startService(intent);
                }
            }).run();
        }
    }


    return true;
}

@Override
public boolean onStopJob(JobParameters job) {
        Log.d("instopjob","cancelled");
        return true;

    }
}

Este é o meu código em que criei o trabalho:

 synchronized  public static void schedule(@NonNull final Context context){
    if(sInitialized)
        return;

    Driver driver=new GooglePlayDriver(context);
    FirebaseJobDispatcher dispatcher=new FirebaseJobDispatcher(driver);

    Job myJob = dispatcher.newJobBuilder()
            .setService(MyJobService.class)
            .setTag(JOB_TAG)
            .setRecurring(true)
            .setTrigger(Trigger.executionWindow(5, 60))
            .setLifetime(Lifetime.FOREVER)
            .setConstraints(Constraint.ON_ANY_NETWORK)
            .setReplaceCurrent(false)
            .setRetryStrategy(RetryStrategy.DEFAULT_EXPONENTIAL)
            .build();

    dispatcher.schedule(myJob);
    sInitialized=true;

}

O que estou tentando fazer é que, se eu não tiver conexão com a Internet, armazene os dados no banco de dados local e execute um trabalho sempre que eu conectar à Internet e sincronizar os dados com o servidor. O código acima está funcionando perfeitamente no dispositivo marshmallow, mas o o trabalho nunca é agendado em dispositivos oreo.

questionAnswers(1)

yourAnswerToTheQuestion