WorkManager всегда в состоянии ENQUEUED (Android-нуга) - PullRequest
0 голосов
/ 01 декабря 2018

Я пробую этот скрипт:

var myConstraints = Constraints.Builder()
        .setRequiredNetworkType(NetworkType.CONNECTED)
        .build()

val uploadInventorySyncWork = OneTimeWorkRequest.Builder(UploadInventorySyncWorker::class.java)
            .setConstraints(myConstraints)
            .addTag(UploadInventoryModel.ONE_TIME_TAG)
            .build()

    WorkManager.getInstance().enqueue(uploadInventorySyncWork)
     WorkManager.getInstance().getWorkInfosByTagLiveData(UploadInventoryModel.ONE_TIME_TAG)
             .observeForever { workStatus ->

                 if (workStatus != null) {
                     attempt+1
                     for (works in workStatus) {
                         Log.d("dodol34 no", attempt.toString() + " | " + works.state.toString())
                         if (works.state == WorkInfo.State.SUCCEEDED) {

                         }
                     }
                 }

             }

он прекрасно работает в Android Oreo.но в андроидной нуге он всегда в состоянии ENQUEUED.Вот результаты LogCat (Android Nougat):

12-02 00:20:13.890 23118-23118/com.mockie.daikokuten D/dodol34 no: 1 | ENQUEUED
1 | ENQUEUED
1 | ENQUEUED
1 | ENQUEUED
1 | ENQUEUED
1 | ENQUEUED
1 | ENQUEUED
1 | ENQUEUED

нет ошибок вообще, иногда это работает, а иногда нет.

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