OKHttpUtils的使用
https://github.com/hongyangAndroid/okhttp-utils
使用OKHttpUtils请求文本
-
get请求
-
public void getDataByOkhttputils() { String url = "http://www.zhiyun-tech.com/App/Rider-M/changelog-zh.txt"; url="http://api.m.mtime.cn/PageSubArea/TrailerList.api"; OkHttpUtils .get() .url(url) .id(100) .build() .execute(new MyStringCallback()); }
-
post请求
public void getDataByOkhttputils()
{
String url = "http://www.zhiyun-tech.com/App/Rider-M/changelog-zh.txt";
url="http://api.m.mtime.cn/PageSubArea/TrailerList.api";
OkHttpUtils
.post()
.url(url)
.id(100)
.build()
.execute(new MyStringCallback());
}
- 回调方法中可以直接使用请求得到的数据,这就是OKHttpUtils封装的好处之一。
- 下载文件
-
/** * 下载文件 */ public void downloadFile() { String url = "http://vfx.mtime.cn/Video/2016/07/24/mp4/160724154733643806.mp4"; OkHttpUtils// .get()// .url(url)// .build()// .execute(new FileCallBack(Environment.getExternalStorageDirectory().getAbsolutePath(), "160724154733643806.mp4")// { @Override public void onBefore(Request request, int id) { } @Override public void inProgress(float progress, long total, int id) { mProgressBar.setProgress((int) (100 * progress)); Log.e(TAG, "inProgress :" + (int) (100 * progress)); } @Override public void onError(Call call, Exception e, int id) { Log.e(TAG, "onError :" + e.getMessage()); } @Override public void onResponse(File file, int id) { Log.e(TAG, "onResponse :" + file.getAbsolutePath()); } }); }
使用OKHttpUtils请求图片
请求单张图片
public void getImage(View view) {
mTv.setText("");
String url = "http://images.csdn.net/20150817/1.jpg";
OkHttpUtils
.get()//
.url(url)//
.tag(this)//
.build()//
.connTimeOut(20000)
.readTimeOut(20000)
.writeTimeOut(20000)
.execute(new BitmapCallback() {
@Override
public void onError(Call call, Exception e, int id) {
mTv.setText("onError:" + e.getMessage());
}
@Override
public void onResponse(Bitmap bitmap, int id) {
Log.e("TAG", "onResponse:complete");
mImageView.setImageBitmap(bitmap);
}
});
}
- 在列表中请求图片