Android 使所有的可观察物都订阅并观察到某物
我正在android应用程序中使用改型和rxjava实现http请求。 我重复了这个代码块:Android 使所有的可观察物都订阅并观察到某物,android,retrofit,rx-java,rx-android,Android,Retrofit,Rx Java,Rx Android,我正在android应用程序中使用改型和rxjava实现http请求。 我重复了这个代码块: apiService.getFromServer() .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) ... 有没有办法不重复这一点?是的,您可以将compose操作符与Transformer对象一起使用,该对象将输入可观察转换为订阅io的可观察,主线程上的观察者(当然也可以是您喜欢的任何其他转换)
apiService.getFromServer()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
...
有没有办法不重复这一点?是的,您可以将
compose
操作符与Transformer
对象一起使用,该对象将输入可观察转换为订阅io的可观察
,主线程上的观察者(当然也可以是您喜欢的任何其他转换)
关于这一点,你可以阅读
<T> Transformer<T, T> applySchedulers() {
return new Transformer<T, T>() {
@Override
public Observable<T> call(Observable<T> observable) {
return observable.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread());
}
};
}
apiService.getFromServer()
.compose(applySchedulers())
...