我目前正在使用Retrofit2
进行API
解析。我被要求使用RxJava
+ Retrofit
更改我的新申请。我怎样才能做到这一点。使用RxJava
和Retrofit
有什么好处。
任何帮助都应该受到高度赞赏。
以下是我用于正常Retrofit
解析的代码
Retrofit.Builder builder =new Retrofit.Builder().baseUrl(API_BASE_URL).client(httpClient).addConverterFactory(GsonConverterFactory.create());
Retrofit retrofit = builder.client(httpClient).build();
return retrofit.create(serviceClass);
答案 0 :(得分:4)
我被要求用RxJava + Retrofit为我的新应用程序更改它。我怎样才能做到这一点。
在项目中添加com.squareup.retrofit2:adapter-rxjava2
作为依赖项,并在Retrofit.Builder
上配置它:
addCallAdapterFactory(
RxJava2CallAdapterFactory.createWithScheduler(Schedulers.io()))
然后您可以从
更改您的Retrofit界面Call<ReturnType> op(...)
到
Observable<ReturnType> op(...)
而不是enqueue()
Call
,订阅observable以使您的请求飞行。
使用RxJava和Retrofit有什么好处
Retrofit服务API调用与应用程序中的其他rxjava代码很好地集成。如果您未在应用程序的其他地方使用rxjava,那么效果不大。