中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android如何封裝Okhttp+Retrofit+RxJava

發布時間:2021-08-18 09:43:53 來源:億速云 閱讀:265 作者:小新 欄目:移動開發

這篇文章主要為大家展示了“Android如何封裝Okhttp+Retrofit+RxJava”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Android如何封裝Okhttp+Retrofit+RxJava”這篇文章吧。

1.創建一個接口,用來定義接口使用的

public interface Api {
 @POST("product/getProductDetail")
 Observable<Goods_Bean> getGoods(@QueryMap Map<String,String> map);
 @POST("product/addCart")
 Observable<Add_Bean> getAdd(@QueryMap Map<String,String> map);
 @POST("product/getCarts")
 Observable<Query_bean> getShopCar(@QueryMap Map<String,String> map);
}

注意導包時要是用的是io包,路徑是使用注解的形式,通過Java的反射的機制

2.創建一個攔截器

/**
 * 自定義攔截器.使用的是okhttp來定義的攔截器
 */
public class MyInterceptor implements Interceptor {
 @Override
 public Response intercept(Chain chain) throws IOException {
 Request request = chain.request();
 HttpUrl httpUrl = request
  .url()
  .newBuilder()
  .addQueryParameter("source", "android")
  .build();
 Request requestNew = request
  .newBuilder()
  .url(httpUrl)
  .build();
 return chain.proceed(requestNew);
 }
}

3.創建一個封裝類

public class RetrofitUtil { 
 public static volatile Retrofit instance; 
 public static Retrofit getInstance(String baseUrl){ 
 if (instance==null){ 
  synchronized (RetrofitUtil.class){ 
  //攔截器 
  OkHttpClient client = new OkHttpClient.Builder() 
   .addInterceptor(new MyInterceptor()) 
   .build(); 
  //創建retrofit對象 
  instance = new Retrofit.Builder() 
   .baseUrl(baseUrl) 
   .client(client) 
   .addConverterFactory(GsonConverterFactory.create()) 
   .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) 
   .build(); 
  } 
 } 
 return instance; 
 } 
}

以上是“Android如何封裝Okhttp+Retrofit+RxJava”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灵寿县| 安远县| 卓尼县| 丹棱县| 左贡县| 莱西市| 井陉县| 普兰县| 莲花县| 阿瓦提县| 大连市| 辽阳市| 桐梓县| 涟水县| 大方县| 寿阳县| 日照市| 游戏| 黑河市| 阳信县| 云南省| 丹凤县| 南木林县| 都兰县| 囊谦县| 巨鹿县| 泰兴市| 文安县| 昭苏县| 阿瓦提县| 荃湾区| 明星| 武胜县| 宁海县| 兰州市| 天祝| 同仁县| 合阳县| 鄱阳县| 台北县| 将乐县|