WorkManager вызывает onStopped () для Result.success () - PullRequest
0 голосов
/ 13 марта 2019

Когда я правильно понял, следует вызвать onStopped(), когда Worker был ненормально остановлен / отменен. Не тогда, когда его работа правильно закончена. Это правильно?

https://developer.android.com/reference/androidx/work/ListenableWorker#onstopped

Этот метод вызывается, когда этому рабочему было приказано остановиться. Это может произойти из-за явного сигнала отмены пользователем или потому, что система решила выгрузить задачу. В этих случаях результаты работы будут игнорироваться WorkManager.

В моем случае все наоборот:

При возврате из doWork() с Result.success() тогда onStopped() называется , а при возврате Result.failure() это не так.

При вызове WorkManager.getInstance().cancelWorkById(id) onStopped() также вызывается (хотя это кажется правильным).


Я использую 2.0.0-rc01 из androidx.work:work-runtime-ktx.

Есть ли (надежный) способ получить информацию, когда работник "нормально закончил" и когда он был "ненормально остановлен"?

Я думаю, что в последнем случае onStopped() вступает в игру. Возможно, это ошибка?

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