4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Retrofit+RxJava(RxAndroid)を使った時に(よく読んでないことが原因で)ハマったこと

Posted at

RetrofitとEventBusを組み合わせてAPIクライアントを作っていましたが、次は何かと耳にするRxJava(RxAndroid)を使ってみましたが、使いかたを理解するのにも少し時間がかかり、その後少しつまずいたことがあったので残しておきます(後から参考にしたブログとかQiitaよく読んだら自分がアホだったことに気が付きましたが)。

 Retrofit retrofit = new Retrofit.Builder()
          .addCallAdapterFactory(RxJavaCallAdapterFactory.create()) 
          .addConverterFactory(GsonConverterFactory.create())
          .baseUrl("http://api.hogehoge.com/")
          .build();

というコードが有り、

addCallAdapterFactory(RxJavaCallAdapterFactory.create()) 

部分の引数の型の解決が出来ていませんでした。

なんでだろうと思いつつ、ひたすらググッてGitHubのissueを見つけ、この通りのことをしていました。

つまり、
compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta2'

としていました。

ここで指定しているアダプタはRetrofit1用のアダプタです。

Retrofit2を使用している場合は、

compile group: 'com.squareup.retrofit2', name: 'adapter-rxjava', version: '2.0.2'

となります。(最新バージョンはここから

よく記事を読んでない自分が全て悪いという内容でしたが、こういうミスもあったということで残しておきます。

ただ、ここでは間違っているadapterをGradleで指定していたのでご注意を。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?