获取 java.lang.IllegalArgumentException:当我使用带有 Observable的RestClient (RxJava)时,无法为方法ApiInterface.login 创建rx.Observable的调用适配器
RestClient.getApiInterface().login(commonParams.getMap())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<PatientData>() {
@Override
public final void onCompleted() {
// do nothing
}
@Override
public final void onError(final Throwable e) {
}
@Override
public final void onNext(final PatientData response) {
}
});
答案 0 :(得分:0)
谢谢。是的,在这段代码中我错过了 .subscribeOn(Schedulers.io())
此外,错误是因为 .addCallAdapterFactory(RxJavaCallAdapterFactory.create()),同时创建了Retrofit.Builder.create()&amp;为了在RxJava(而不是RxJava2)中包含 RxJavaCallAdapterFactory ,这种依赖有效:编译'com.squareup.retrofit2:adapter-rxjava:2.1.0'
答案 1 :(得分:-1)
添加以下方法调用
.subscribeOn(Schedulers.io())
有时候不给这种方法打电话也会引起问题。