WorkManger doWork - какие методы я могу и не могу вызвать из doWork? - PullRequest
0 голосов
/ 16 ноября 2018

Как я понимаю, doWork () может запускать задания даже после завершения работы приложения.Означает ли это, что я не могу или не должен вызывать методы-члены, такие как члены моего класса Repository?

Или, другими словами, как мне безопасно обновить базу данных Room после завершения приложения или даже после его завершения?существует из doWork ().

1 Ответ

0 голосов
/ 21 ноября 2018

RxJava создан для обработки только таких ситуаций.Создайте отдельный обратный вызов rxJava, и после успешного вызова API просто обновите свою базу данных.В моем случае я создал отдельный класс для вызова API и onSuccess API, я просто обновляю свою базу данных.

Работник просто нажимает на API и возвращает успешный вызов, поэтому вы не должны вызывать никакой другой асинхронный вызов.вызов, который зависит от более раннего вызова API, вместо этого вы обрабатываете его по ответу API, лучше использовать RxJava с Retrofit / OkHttp / Volley.Один работник должен выполнить одну задачу.Если вы не понимаете эту архитектуру, я помогу вам кодами.

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