retrofit的使用已經(jīng)有很長時間了.如何引用,自行搜索.
1.當前項目,作為BaseUrl的域名(ip地址)有多個.
封裝RetrofitUtils工具類.講BaseUrl作為Map的key,Retrofit實例對象為Value.
當前是kotlin的寫法,核心就是map存儲retrofit.
2.網(wǎng)絡請求的response需要統(tǒng)一處理
retrofit+Rxjava ,其實就是多一句.addCallAdapterFactory(RxJavaCallAdapterFactory.create()),給Retrofit一個觀察者.
重寫回調,進行統(tǒng)一處理就好了.obs需要實例化.因為可以使用obs.unsubscribe(),在Activity關閉的時候取消回調事件,防止引發(fā)異常.
3.如何重寫
書寫api的時候,我們定義一個結構類Test(名字自定義)
rspCode,RepDesc是錯誤碼及錯誤原因.info是詳情.
泛型變量info可是是任意內容的實體類.通過api傳遞
回調中,因為我們強行給apiService添加了Test外層類.所以可以直接指定Subscribe的外層泛型.內層泛型,我們通過集成的方式傳遞.
于是,可以在onNext中統(tǒng)一的處理返回碼.然后通過onsuccess進行回調
demo:?https://github.com/QunCheung/Retrofit-Rxjava-CallBack.git