Имею вот такой код: io.reactivex
get().subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.delay(5, TimeUnit.SECONDS)
.doOnSubscribe(d-> getViewState().showLoadingView(d))
.doFinally(() -> getViewState().hideLoadingView())
.subscribe(data->{
getViewState().showData(data);
}, er->{
Log.e("TutorialPresenter", er.toString());
});
И почему то в subscribe получаю экзепшен android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
Но я ведь делаю .observeOn(AndroidSchedulers.mainThread())
что не так?
В моем случае
get()
.subscribeOn(Schedulers.io()) //переход в поток вычислений
.observeOn(AndroidSchedulers.mainThread()) // переход в UI поток
.delay(5, TimeUnit.SECONDS) // переход в поток вычислений (вот из-за этого и экзепшен)
Правильный вариант при задержке
get()
.subscribeOn(Schedulers.io()) //переход в поток вычислений
.delay(5, TimeUnit.SECONDS) // переход в поток вычислений
.observeOn(AndroidSchedulers.mainThread()) // переход в UI поток
либо
get()
.subscribeOn(Schedulers.io()) //переход в поток вычислений
.delay (5, TimeUnit.SECONDS, AndroidSchedulers.mainThread()) // переход в UI поток
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Пишу приложение на java с использованием базы данных postgre sqlСвойства прописаны в файле \resourses\application
Есть метод, который делает положительные числа отрицательными и наоборот
Вот например, у меня есть приложение которое выводит сумму в результате сложения выбранных чисел (из двух дат) , которая по итоге не превышает...