При использовании Observables with Retrofit, как вы справляетесь с сетевым сбоем?
С учетом этого кода:
Observable<GetJobResponse> observable = api.getApiService().getMyData();
observable
.doOnNext(new Action1<GetJobResponse>() {
@Override
public void call(GetJobResponse getJobResponse) {
//do stuff with my data
}
})
.doOnError(new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
//do stuff with error message
}
});
Запрос просто проваливается без сети, а onError не вызывается. Он не падает, но терпит неудачу. Журналы показывают, что дооснащение получило ошибку:
java.net.UnknownHostException: Unable to resolve host "api-staging.sittercity.com": No address associated with hostname
at java.net.InetAddress.lookupHostByName(InetAddress.java:424)
at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
at java.net.InetAddress.getAllByName(InetAddress.java:214)
at com.squareup.okhttp.internal.Dns$1.getAllByName(Dns.java:29)
Используя обратные вызовы, это просто передается в onFailure (RetrofitError error). Как я могу получить это с помощью RxJava?