在 RxJava2 中为 CompositDisposable 添加一个 may



在我的活动中,我有以下内容,这会导致错误消息"错误:(190, 35( 错误:不兼容的类型:也许观察者无法转换为一次性"。我希望这能奏效,因为我一直在用 Completable 和 DisposableCompletableObserver 组合做类似的事情。如何在 RxJava2 中使用带有 CompositeDisposable 的 May?

private final CompositeDisposable disposables = new CompositeDisposable();
// ...
String id = authManager.getUserID();
Maybe maybe = userManager.getUser(id);
disposables.add(maybe
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribeWith(new DisposableMaybeObserver() {
@Override
public void onSuccess(Object o) {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
}));

你应该使用ResourceMaybeObserver

private final CompositeDisposable disposables = new CompositeDisposable();
String id = authManager.getUserID();
Maybe<Object> maybe = userManager.getUser(id);

disposables.add(maybe
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribeWith(new ResourceMaybeObserver<Object>() {
@Override
public void onSuccess(@NonNull Object o) {
}
@Override
public void onError(@NonNull Throwable e) {
}
@Override
public void onComplete() {
}
}));

相关内容

最新更新