как в mvvm : база - repository - viewmodel - activities, то в случае с использованием rxJava мне надо будет вообще что-то писать в repository и в viewmodel-и? Или я буду сразу из Активити rxJavой асинхронно сразу методы из Dao вызывать?
В репозитории response объекты оборачиваешь оберткой rx, single, например. Во viewmodel дергаешь метод из repository, указывая нужные потоки, слушая ответ и передавая его в livedata, а уже в activity/fragment подписываешься на livedata Это один из возможных сценариев
А обязательно передавать из ViewModel в Активити - через LiveDat-у? Или можно во viewmodel дернуть метод из repository и в активити обратиться к viewmodel?
можно но не нужно, тебе же нужен аля колбэк какой то об ошибке и успехе напрямую ты этого не получишь
там будет Single<List<Obj>>. Всеравно через ливдату пускать?
ливдата будет типа List<Obj>
В репозитории у меня такое: public Single<List<Person>> getFivePersonsFrom(String status_mudak) { return mPersonDao.getFivePersonsFrom(status_mudak); }
ну да
И во viewmodel мне надо передать это в ливдату?
посмотри примеры на гитхабе mvvm + rxjava а то так можно по слову вытягивать вечность
А как передать его в LiveData?
livedata.postValue / value
Sps
Обсуждают сегодня