RxJava2:Observable的替代品

问题描述 投票:6回答:2

我有一个API,只返回错误/成功代码,没有正文。使用RxJava1,我会使用Observable<Void>作为此调用的返回值。

我可以为RxJava2使用什么? Wiki上对RxJava2(link)的提示没有帮助,因为我无法改变API的工作方式。

建立:

compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
android rx-android rx-java2
2个回答
25
投票

使用Completable

如果操作成功,它将发出成功的终止事件。如果失败,您可以使用自己的Exception子类来包装必要的错误代码。


0
投票

您仍然可以使用Observable,但将Void类型替换为枚举类型,其类似于此

public enum Terminal {
    TERMINAL
}

然后像这样使用它

Observable<Terminal>

PS:您可以根据需要为枚举命名

© www.soinside.com 2019 - 2024. All rights reserved.