IllegalArgumentException: No se pudo localizar el adaptador de llamada para rx.Observable RxJava, Retrofit2

Estoy recibiendo el error anterior al llamar al api resto. Estoy usando retrofit2 y RxJava.

ServiceFactory.java

public class ServiceFactory { public static <T> T createRetrofitService(final Class<T> clazz, final String endpoint){ Retrofit retrofit = new Retrofit.Builder() .baseUrl(endpoint) //.addConverterFactory(GsonConverterFactory.create()) .build(); T service = retrofit.create(clazz); return service; } 

}

MovieService.java

 public interface MovieService{ //public final String API_KEY = "<apikey>"; public final String SERVICE_END = "https://api.mymovies.org/3/"; @GET("movie/{movieId}??api_key=xyz") Observable<Response<Movies>> getMovies(@Field("movieId") int movieId); 

}

Dentro de MainActivity

  MovieService tmdbService = ServiceFactory.createRetrofitService(MovieService.class, MovieService.SERVICE_END); Observable<Response<Movies>> responseObservable = tmdbService.getMovies(400); responseObservable .subscribeOn(Schedulers.newThread()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Subscriber<Response<Movies>>() { @Override public void onCompleted() { } @Override public void onError(Throwable e) { } @Override public void onNext(Response<Movies> moviesResponse) { } }); 

Asegúrese de agregar la compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0-beta3' o cualquier versión beta que esté utilizando para sus dependencias y, a continuación, configure la actualización con ese convertidor:

 Retrofit retrofit = new Retrofit.Builder() .baseUrl(endpoint) .addConverterFactory(GsonConverterFactory.create()) .addCallAdapterFactory(RxJavaCallAdapterFactory.create()) .build(); 

Para RxJava2 Utilice compile 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'

.addCallAdapterFactory (RxJava2CallAdapterFactory.create ())

Para obtener más información sobre el uso https://github.com/JakeWharton/retrofit2-rxjava2-adapter

De la página del proyecto Github:

Blockquote Esto ahora es DEPRECATED! Retrofit 2.2 y más reciente tienen un adaptador de llamada de primera para RxJava 2: https://github.com/square/retrofit/tree/master/retrofit-adapters/rxjava2

Ahora sólo tiene que incluir en su archivo app / build.gradle:

 compile 'com.squareup.retrofit2:adapter-rxjava2:latest.version' 
  • ¿Cómo terminar un observable?
  • Netflix vs ReactiveX RxJava-Biblioteca de Android
  • Combinación de llamadas API con RX Java
  • Compruebe que el método se llama en onNext del suscriptor de RxJava
  • Rx 2 Android ¿qué es mejor Single o Observable para llamadas api?
  • Retrofit2 y kotlin
  • Retrofit no puede crear adaptador de llamada
  • Realizar N llamadas de api secuenciales usando RxJava y Retrofit
  • ¿Cómo administrar un DialogFragment con RxJava?
  • RxAndroid: ¿cuándo usar bindActivity y por qué?
  • Manejar paginación con RxJava
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.