2016-07-13 11 views
5

Sto cercando di utilizzare FirebaseJobDispatcher seguendo thisCome utilizzare FirebaseJobDispatcher

Ma la mia domanda è che, Come impostare intervallo di tempo per l'oggetto dispatcher come GCMNetworkManager (setPeriod). Oppure spiega come funziona FirebaseJobDispatcher.

risposta

1

Solo iniziato a lavorare con il Dispatcher un giorno fa, quindi potrei sbagliarmi. Penso che per quello che vuoi fare, devi impostare il tuo lavoro come ricorrente e scegliere un raccordo trigger.

final Job.Builder builder = dispatcher.newJobBuilder() 
       .setTag("myJob") 
       .setService(myJobService.class) 
       .setRecurring(true) 
       .setTrigger(Trigger.executionWindow(59, 61)); 

Ti darebbe un lavoro che si ripete all'incirca ogni minuto.

Come avviare il lavoro e impostare il Dispatcher in generale, ti consiglio di dare un'occhiata al testapp che è disponibile nel repository git FirebaseJobDispatcher (che hai già collegato). Soprattutto le classi JobFormActivity e DemoJobService.

+0

grazie per il repo – John

0

Questo si attiverà all'incirca in 10 minuti. Nota - il tempo di esecuzione può essere diverso durante la modalità sospensione dopo Marshmallow dipende dalla finestra disponibile.

Job myJob = mDispatcher.newJobBuilder() 
       .setService(MyJobService.class) 
       .setTag(JOB_TAG) 
       .setRecurring(true) 
       .setTrigger(Trigger.executionWindow(600, 600)) 
       .setLifetime(Lifetime.FOREVER) 
       .setReplaceCurrent(false) 
       .setRetryStrategy(RetryStrategy.DEFAULT_EXPONENTIAL) 
       .build(); 

    mDispatcher.schedule(myJob);