標籤:void 簡單 avl ice 功能 rri create end blob
RetrofitUtils
GitHub地址,幫忙給個Star
項目介紹
Retrofit+Okhttp輔助類的簡單封裝,vesion 1.0.X 實現了Get,Post-Form、Post-Json
三種形式的網路請求,後續版本會實現檔案上傳下載and各類raw的請求方式。
功能
- Get
- Post表單
- PostJson
後續版本待實現功能
- 檔案上傳下載(開發中...)
- 攔截器
- RxJava+Retrofit+Okhttp
- 考慮去掉loading(醜且無用),是否把所用到的第三方庫打包進庫中
使用說明1. 引用
implementation ‘cn.cyq.net:retrofitutils:1.0.3‘ <!--library中引用了下面五個庫,我沒有打包進去了,避免版本衝突,比如七牛雲的okio okhttp衝突--> //網路請求依賴 implementation ‘com.squareup.okio:okio:1.14.0‘ implementation ‘com.squareup.okhttp3:okhttp:3.10.0‘ implementation ‘com.squareup.retrofit2:retrofit:2.4.0‘ implementation ‘com.squareup.retrofit2:converter-scalars:2.3.0‘ //Loader依賴 implementation ‘com.wang.avi:library:2.1.3‘
2. 初始化
在Application的onCreate()初始化
public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); RestClient.init(getApplicationContext(), "baseUrl address"); }}
3. 具體請求Get
RestClient.buider() .loader(this)//可以不添加 .url(url) .success(new ISuccess() { @Override public void onSuccess(String response) { Log.i("test", "GET請求:" + response); } }) .failure(new IFailure() { @Override public void onFailure() { Log.i("test", "失敗"); } }) .error(new IError() { @Override public void onError(int code, String msg) { Log.i("test", "錯誤"); } }) .build() .get();
Post表單
RestClient.buider() .loader(this) .url(url) .params("key1", "value1") .params("key2", "value2") .success(new ISuccess() { @Override public void onSuccess(String response) { Log.i("test", "POST請求:" + response); } }) .failure(new IFailure() { @Override public void onFailure() { Log.i("test", "失敗"); } }) .error(new IError() { @Override public void onError(int code, String msg) { Log.i("test", "錯誤"); } }) .build() .post();
Post Json
String jsonStr = "{\"username\":\"張三\",\"age\":16}"; RestClient.buider().loader(this) .url("http://192.168.0.1:8080/service/jsontest.html") .raw(jsonStr) .success(new ISuccess() { @Override public void onSuccess(String response) { Toast.makeText(MainActivity.this, response, Toast.LENGTH_LONG).show(); Log.i("test", "Post Row請求:" + response); } }) .error(new IError() { @Override public void onError(int code, String msg) { Log.i("test", "Post Ro請求失敗"); } }) .build() .post();
說明
- vesion 1.0.X 是初期版本,不建議在正式項目使用,後續會完善...
引用的庫及版本
ps:2018-07-26[最新]
- com.squareup.retrofit2:retrofit:2.4.0
- com.squareup.okhttp3:okhttp:3.10.0
- com.wang.avi:library:2.1.3
- com.squareup.retrofit2:converter-scalars:2.3.0
- com.squareup.okio:okio:1.14.0
Android網路請求庫RetrofitUtils