Я разрабатываю приложение для Android с MVP и RxJava. Ну, у меня есть сомнения:MVP + RxJava - Поставить планировщиков в презентаторе или в интерактивном режиме?
Когда я создаю мои выступающие и Interactor я могу поставить меня Планировщик в презентации, как это:
Планировщиков в Presenter
Presenter:
override fun tryLogin(username: String, password: String) {
mLoginInteractor.login(username, password)
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(object : Subscriber<User>(){
[...]
}
Войти Interactor:
override fun login(username: String, password: String) =
mRetrofit.create(ApiClient::class.java).login()
Или я могу установить Планировщик в Interactor, как это:
Планировщиков в Interactor
Presenter:
override fun tryLogin(username: String, password: String) {
mLoginInteractor.login(username, password)
.subscribe(object : Subscriber<User>(){
[...]
}
Войти Interactor:
override fun login(username: String, password: String) =
mRetrofit.create(ApiClient::class.java).login()
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
Я вижу что Google советует устанавливать Планировщиков в Interactor. Вы можете увидеть это в этой ссылке:
https://github.com/googlesamples/android-architecture/tree/todo-mvp-rxjava/
Но многие люди ставят код в Presenter, как в этом примере:
Итак, ли я установить Планировщик в Presenter или в Interactor?
(я думаю, что это лучшая идея поставить в Presenter, как работа Intractor только, чтобы получить данные, но, возможно, я ошибаюсь ...)
Я согласен. Благодаря! –