改造2.0 beta1

时间:2015-08-31 12:30:59

标签: retrofit

public interface AppApi 
{
        @GET("/api?action=" + ApiManager.API_USER)
        Observable<JsonObject> getUser();
}

whith Retrofit 2.0 beta1。我无法获得回复?

Retrofit 2.0 beta不支持Observable,现在?

2 个答案:

答案 0 :(得分:8)

现在需要RxJava的适配器。

您可以从changeLog

收到消息
  

新增功能:CallAdapter(和Factory)提供支持多个扩展点   执行机制。 RxJava实现由a提供   兄弟模块。

尝试以下代码,问题可能会解决。

在app / build.gradle中

compile 'com.squareup.okhttp3:okhttp:3.0.1'
compile 'com.squareup.retrofit2:retrofit:2.0.0-beta3'
compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0-beta3'
compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta3'
compile 'io.reactivex:rxandroid:0.24.0'

在你的java代码中(比如你的活动)

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

现在您将使用RxJava

答案 1 :(得分:2)

你可以这样写。

public interface AppApi {
   @GET("/api")
   Observable<JsonObject> getUser(@Query("action") String api_user);
}