и read timeout'ов в контексте retrofit2/okhttp3? В обоих случаях у меня выбрасываются одинаковые исключения, и, кажется, их только по стэктрэйсу можно различать. Поделитесь, пожалуйста, как вы с этим справлялись.
Не ручаюсь за идеальный вариант, но вот както так disposables.add(loginApi.loginUser(loginRequest) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe( { response: LoginResponse -> with(response) { viewState.updateToken(response) } }, { error -> viewState.handleError(error, this) })) } override fun handleError(error: Throwable, presenter: BasePresenter) { with(error) { when(this){ is HttpException -> { when(code()){ HttpURLConnection.HTTP_UNAUTHORIZED -> {} HttpURLConnection.HTTP_INTERNAL_ERROR -> {} HttpURLConnection.HTTP_UNAVAILABLE -> {} else -> showErrorDialog(error.toString()) } } is SocketTimeoutException -> { alertTimeOut() } is ConnectException -> { alertConnection() } else -> showErrorDialog(error.toString()) } } }
Обсуждают сегодня