2016-11-07 133 views
0

我在Android上使用Retrofit,我想使用RxJava。使用rxjava進行改造

僅使用改造是罰款,但與RxJava是一種對我來說很難。

你能告訴我該怎麼辦?

我寫了象下面這樣的界面,但我不知道我應該使用什麼選項???????????

在此先感謝。

@GET("users") 
Observable<??????????????> getUserById (@Query("id") int id); 

@GET("users") 
Observable<??????????????> getUserByName (@Query("name") String name); 

@GET("users") 
Observable<??????????????> getAllUsers(); 
+0

其實你需要什麼?你正在使用它正確 – Nivedh

回答

1

正如您所遇到的,您有與Retrofit的經驗。通常情況下,您的網絡調用將返回Call<{type}>,其中type是您從API返回的對象。

在這裏,你只是Observable取代Call。所以,你的函數看起來可能像:

@GET("users") 
Observable<User> getUserById (@Query("id") int id); 

@GET("users") 
Observable<User> getUserByName (@Query("name") String name); 

@GET("users") 
Observable<List<User>> getAllUsers(); 

如何使用RxJavaRetrofit的教程可以發現here

+0

謝謝Zagorski。這真的很有幫助。 –

0
Retrofit retrofit = new Retrofit.Builder() 
       .baseUrl(YOUR API URL).addConverterFactory(GsonConverterFactory.create()).addCallAdapterFactory(RxJavaCallAdapterFactory.createWithScheduler(Schedulers.io())) 
       .build(); 

,並添加

compile 'com.squareup.retrofit2:retrofit:2.0.1' 
compile 'com.squareup.retrofit2:adapter-rxjava:2.0.1' 

到搖籃。

Here是參考示例