Firebase Network Dispatcher перестает работать после закрытия приложения. Но GCM Network Manager отлично работал для указанного сценария - PullRequest
0 голосов
/ 07 мая 2018

У меня есть сценарий, в котором я должен прослушивать состояние XMPP-соединения, даже когда приложение закрыто.Сейчас я использую Firebase Network Dispatcher, потому что GCM Network Manager устарел, он работает только тогда, когда приложение находится на переднем плане / фоне.Он останавливается всякий раз, когда приложение закрыто.У кого-нибудь могут быть предложения?Ниже приведен фрагмент кода.

    Driver driver = new GooglePlayDriver(getApplicationContext());
    FirebaseJobDispatcher firebaseJobDispatcher = new FirebaseJobDispatcher(driver);

    Job constraintReminderJob = firebaseJobDispatcher.newJobBuilder()
            .setService(FirebaseService.class)
            .setTag("Notify Tag")
            .setLifetime(Lifetime.UNTIL_NEXT_BOOT)
            .build();
    firebaseJobDispatcher.schedule(constraintReminderJob);

1 Ответ

0 голосов
/ 07 мая 2018
Driver driver = new GooglePlayDriver(context);
        FirebaseJobDispatcher firebaseJobDispatcher = new FirebaseJobDispatcher(driver);

        Job constraintReminderJob = firebaseJobDispatcher.newJobBuilder()
                .setService(ReminderService.class)
                .setTag(REMINDER_JOB_TAG)
                .setConstraints(Constraint.DEVICE_CHARGING)
                .setLifetime(Lifetime.FOREVER)
                .setRecurring(true)
                .setTrigger(Trigger.executionWindow(
                        REMINDER_INTERVAL_SECONDS,
                        REMINDER_INTERVAL_SECONDS + SYNC_FLEXTIME_SECONDS
                ))
                .setReplaceCurrent(true)
                .build();

        firebaseJobDispatcher.schedule(constraintReminderJob);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...