1
私はRetofit2とRxJava2を使ってAPIからデータを取得しています。私は、次のコードRetrofit2とRxJava2:ネットワークエラーを検出する方法
Observable<Recipe> recipeObservable = getDataManager().getRecipes(String.valueOf(page));
recipeObservable.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<Recipe>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull Recipe recipe) {
getMvpView().updateRecipeList(recipe.getResults());
++page;
//getMvpView().hideLoading();
}
@Override
public void onError(@NonNull Throwable e) {
if (e instanceof HttpException)
Timber.d("Network Error");
}
@Override
public void onComplete() {
}
});
を使用しています。しかし、問題は、実行されます決してTimber.d("Network Error");
ではありません。私はさまざまなウェブサイトを見ても問題を解決できませんでした。私はRetrofit2
に使用していますが、RxJava2
に慣れていません。だから助けてください。さらに詳しい情報が必要な場合は、私はそれを投稿します。
どのようなエラーがありますか? onErrorにもう少しログを記録して、別のタイプのエラーがないかどうかを確認してください。 – alex
HttpExceptionはネットワーク障害に関連していません。 IOExceptionはあなたが探しているものです。 –
@AndrejJurkinおかげで兄弟。出来た。私はそれを受け入れupvoteことができるように答えとしてそれを書いてください。 – Vicky