![]() | RxJavaリアクティブプログラミング (CodeZine BOOKS) 新品価格 |

AndroidでRetrofitを使ってみた(RxJavaなしバージョン)
の続編
次はRxJavaを組み込んでみた
基本的に差分のみの記載
・gradle
implementation "io.reactivex.rxjava2:rxjava:2.1.3"
implementation "io.reactivex.rxjava2:rxandroid:2.0.1"
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
・Request
//リクエストの最後をreturnにする
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(HOST)
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build();
Single<Model> responseCall = service.getXXX();
return service.getXXX()
public interface ApiService {
@GET("/path")
Single<Model> getXXX();
}
・Obserble
RequestApi.AAA()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new DisposableSingleObserver<Model>() {
@Override
public void onSuccess(Model model) {
//成功だったら
}
@Override
public void onError(Throwable e) {
//エラーだったら
}
});
これでうまくいきましたとさ
Androidの流行りなのでぜひどうぞ