Отображение уведомления, когда пользователь завершил работу приложения и подключился к сети - PullRequest
0 голосов
/ 01 декабря 2018

Мне нужно показать уведомление, когда пользователь завершил работу приложения и подключился к сети.Пока я использую этот код, и он прекрасно работает!

class MyJobService : JobService() {


override fun onStartJob(job: JobParameters): Boolean {
    Log.w("This loggs out when user receives network", "I want to show notification")
    return false // Answers the question: "Is there still work going on?"
}

override fun onStopJob(job: JobParameters): Boolean {
    return false // Answers the question: "Should this job be retried?"
}

Вот диспетчер

  val dispatcher = FirebaseJobDispatcher(GooglePlayDriver(context))

                                val myJob = dispatcher.newJobBuilder()
                                        .setService(MyJobService::class.java)
                                        .setLifetime(Lifetime.FOREVER)
                                        .setLifetime(Lifetime.UNTIL_NEXT_BOOT) 
                                        .setTag("UniqueTagForYourJob")
                                        .setReplaceCurrent(true)
                                        .setRecurring(false) 
                                        .setTrigger(Trigger.executionWindow(0, 10))                                    .setRetryStrategy(RetryStrategy.DEFAULT_LINEAR)                                         .setConstraints(Constraint.ON_ANY_NETWORK)
                                        .setExtras(myExtrasBundle)
                                        .build()

                                dispatcher.mustSchedule(myJob)

Прямо сейчас этот код открывает приложение.Я думаю, что одним из основных случаев является то, что onStartJob работает в основном потоке.Но мне нужно только показывать уведомление при восстановлении сети, а не открывать приложение.Если у вас есть какие-то другие решения, то я буду рад узнать о них:)

...