Я тестирую приложение, которое получает облачные сообщения с данными Firebase и обрабатывает их в службе заданий Firebase.Получение сообщений в FirebaseMessagingService происходит мгновенно и без проблем, но служба заданий Firebase иногда запускается с большой задержкой (5-10 минут), а иногда не запускается вообще.Метод dispatcher.schedule (myJob) всегда дает результат SCHEDULE_RESULT_SUCCESS.Это функция планирования заданий:
// For long-running tasks (10 seconds or more) use Firebase Job Dispatcher.
Bundle bundle = new Bundle();
bundle.putInt(WatchDogService.REQUEST_ID, request.ordinal());
bundle.putString(REQUEST_PARAM, parameter);
FirebaseJobDispatcher dispatcher =
new FirebaseJobDispatcher(new GooglePlayDriver(this));
Job myJob = dispatcher.newJobBuilder()
.setService(LongJobService.class)
.setTag("ua.ers.LongJobService")
.setTrigger(Trigger.NOW)
.setReplaceCurrent(true)
.setExtras(bundle)
.build();
int result = dispatcher.schedule(myJob);
Log.d(TAG, "Schedule result: " + result);
Вот класс обслуживания заданий Firebase:
public class LongJobService extends JobService {
private static final String TAG = "LongJobService";
@Override
public boolean onStartJob(final JobParameters jobParameters) {
Log.d(TAG, "LongJobService started");
return true;
}
@Override
public boolean onStopJob(JobParameters jobParameters) {
Log.d(TAG, "LongJobService stopped");
return false;
}
}
Скажите, пожалуйста, в чем может быть причина проблемы?