Articles of job dispatcher

Почему моя работа не начинается?

Я пытаюсь использовать JobSchedulers для моего приложения чата (для сообщения async send): val job = dispatcher.newJobBuilder() .setService(BackgroundJobService::class.java) .setTag(BackgroundJobService.TASKTAG_SEND_MESSAGE) .setReplaceCurrent(false) .setConstraints(Constraint.ON_ANY_NETWORK) .setExtras(bundle) .setTrigger(Trigger.executionWindow(0, 1)) .build() dispatcher.mustSchedule(job) И добавьте мой сервис в манифест: <service android:exported="false" android:name=".data.background.service.BackgroundJobService"> <intent-filter> <action android:name="com.firebase.jobdispatcher.ACTION_EXECUTE"/> </intent-filter> </service> Я пишу этот JobService, и он не вызвал onCreate () и не вызвал onDestroy () class […]

Ошибка ввода типа. Firebase JobDispatcher

Я столкнулся со следующей ошибкой в ​​этой строке: .setService(LocationFirebaseJobService::class.java) : Ошибка ввода типа. Ожидаемое несоответствие типа: выводимый тип – Class<LocationFirebaseJobService> но Class<out JobService!> Ожидался Вот мой код: val dispatcher = FirebaseJobDispatcher(GooglePlayDriver(context)) val myJob = dispatcher.newJobBuilder() .setService(LocationFirebaseJobService::class.java) .setTag("my-unique-tag") .build() My LocationFirebaseJobService: class LocationFirebaseJobService: JobService() { override fun onStartJob(p0: JobParameters?): Boolean { TODO("not implemented") //To change body […]

Robolectric addResolveInfoForIntent не работает

С robolectric 3.3, я пытаюсь заставить диспетчер пакетов возвращать правильные значения для queryIntentServices, чтобы работать диспетчер задания Firebase. В моем AndroidManifest.xml у меня есть: <service android:name="com.jongla.soundmash.service.SoundMashService" android:exported="false"> <intent-filter> <action android:name="com.firebase.jobdispatcher.ACTION_EXECUTE"/> </intent-filter> </service> И в моем тестовом классе приложений, который Robolectric вызывает, я поставил: val executeIntent = Intent("com.firebase.jobdispatcher.ACTION_EXECUTE") executeIntent.setClassName(RuntimeEnvironment.application, "com.jongla.soundmash.service.SoundMashService") Shadows.shadowOf(packageManager) .addResolveInfoForIntent(executeIntent, ResolveInfo().apply { serviceInfo = […]

Intereting Posts