簡體   English   中英

從服務器獲取數據時,Retrofit和RxJava的目的是什么?

[英]What is the purpose of Retrofit and RxJava when getting data from a server?

我甚至在Internet上也看到了很多示例/教程,它們都是關於使用Retrofit和RxJava從后端服務器獲取數據的stackoverflow的,但是我無法理解每種技術的目的是什么。

如果有人能解釋我,我將不勝感激。 謝謝!

Retrofit可幫助您為網絡接口提供高級抽象。

Retrofit將您的HTTP API轉換為Java接口。

因此,您不必一直手動執行此操作:只需注釋...

RxJava引入了反應式編程的概念,而RxJava2是android社區中最受歡迎的依賴項。 談論它與改造的聯系:默認情況下,改造會從每個請求中返回一個Call ,為了異步運行,需要提供一個回調,該回調將在操作完成后調用。 用於Retrofit的RxJava2適配器使操作變得更容易:它刪除了回調,並讓您可以更好地控制線程環境和任務取消,因此您可以做下一件事情:

myApi.doSomething()
    .subscribeOn(Schedulers.Io()) //run network request on Io thread pool
    .observeOn(AndroidSchedulers.mainThread()) //emit the result in android's main thread
    .subscribe(result -> processResult(result));

而帶有Retrofit的接口聲明將如下所示:

public interface MyApi {

    @GET("/endpoint")
    public Single<Result> doSomething();

}

Retrfit是著名的android網絡庫。 它處理網絡連接和其他與網絡相關的事情(請參考: https : //futurestud.io/tutorials/retrofit-getting-started-and-android-client )。 RxJava是訂閱者和觀察者模式的概念,用於獲取特定更新/事件的最新結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM