我一直在寻找API-calls
的最佳方式,为此,我对主要方法进行了一些研究,例如Retrofit
,Volley
,Ion
等等,我确信Retrofit
确实是最好的。很长一段时间以来我习惯使用这个,我应该继续过我的生活,对我过去的选择充满了快乐,但是我只使用Retrofit
,并且它的呼叫处理,我经常做我的事情,处理success
和error
,它工作正常,GG。所以,我在RxAndroid
上听说Retrofit
,然后我对自己产生了巨大的疑问:
我应该实施RxAndroid
吗?
这会让我的项目变得更好吗?使用(或不使用)有什么好处?
答案 0 :(得分:2)
我猜你在这种情况下可能意味着RxJava
。 RxJava和Retrofit非常合适....特别是如果您需要组合执行不同的请求。例如,假设您有以下内容,并且您希望在调用getData
public interface SomeRetrofitServiceInterface {
@POST("issueToken")
Observable<String> issueToken(@Query("subscriptionKey") String subscriptonKey);
@GET("getSomeData")
Observable<MyPojo> getData(@Query("token") String token);
}
这是使用RxJava
执行此操作的方法service.issueToken(subscriptionKey)
.subscribeOn(Schedulers.io())
.flatMap(token -> service.getData(token));
另一个用例可能是您希望并行运行多个请求(例如,使用Observable.zip()
并等待所有请求完成后再进行进一步处理。
答案 1 :(得分:0)
如果你已经熟悉整个RX思维方式,我会说:试一试。对我而言,它使我的应用程序方式更容易,但影响取决于您的应用程序的设置方式。
如果您不熟悉RX,我建议您首先尝试掌握它背后的想法,将其纳入您应用的一些小部分,而不将其与Retrofit结合使用。
最后但并非最不重要的一点:不要使用它,因为它的时尚和发生,首先尝试一下,如果你发现它对你的代码有价值,继续使用它。
答案 2 :(得分:0)
每个库的RxJava对应用程序的性能和大小都有相同的负面影响。在这种情况下,它不是一个很大的开销。 RxJava很简单,可以提高代码的质量。当您开始使用它时,您将在所有项目中使用它。