//详细见解请看:http://www.2cto.com/kf/201607/524976.html
xUtils是基于Afinal开发的目前功能比较完善的一个Android开源框架,最近又发布了xUtil3.0,在增加新功能的同时又提高了框架的性能.
1.首先添加一下依赖:
compile ‘org.xutils:xutils:3.3.36’如果使用eclipse可以点击下面链接下载aar文件, 然后用zip解压,取出jar包和so文件。
Github下载:https://github.com/wyouflf/xUtils3 JCenter下载:http://jcenter.bintray.com/org/xutils/xutils/ Maven下载1:http://central.maven.org/maven2/org/xutils/xutils/ Maven下载2:http://repo1.maven.org/maven2/org/xutils/xutils/
2-3)创建Application
public class MyApp extends Application { @Override public void onCreate() { super.onCreate(); x.Ext.init(this);//初始化,xutils3需要初始化 x.Ext.setDebug(true); //是否输出debug日志,开启debug会影响性能。 } }2-4)在Manifest文件中注册MyApp//获取网络数据 private void getServerData() { String url = "http://www.93.gov.cn/93app/data.do";//这是url地址 RequestParams params = new RequestParams(url);//请求数据 params.addQueryStringParameter("channelId", "0");//这两个方法是拼接参数 params.addQueryStringParameter("startNum", "0");
//这是最主要的一步
x.http().get(params, new Callback.CommonCallback<String>() { @Override public void onSuccess(String result) {
// result是最后请求的结果!
Log.i("xxx", result); } @Override public void onError(Throwable ex, boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } }); } //这是上传文件的方法
4)上传文件
String url = "http://www.android.com"; @Event(R.id.upload) private void upload(View v){ String path="/mnt/sdcard/Download/icon.jpg"; RequestParams params = new RequestParams(url); params.setMultipart(true); params.addBodyParameter("file",new File(path)); x.http().post(params, new Callback.CommonCallback() { @Override public void onSuccess(String result) { } @Override public void onError(Throwable ex, boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } }); }//xutils解析图片的方法:
ImageOptions options = new ImageOptions.Builder().setCircular(true).setCrop(true).setSize(100, 100).setLoadingDrawableId(R.mipmap.ic_launcher).build(); x.image().bind(iv, “地址”, options);
ImageOptions options = new ImageOptions.Builder().setFadeIn(true).build(); //淡入效果 //ImageOptions.Builder()的一些其他属性: //.setCircular(true) //设置图片显示为圆形 //.setSquare(true) //设置图片显示为正方形 //setCrop(true).setSize(200,200) //设置大小 //.setAnimation(animation) //设置动画 //.setFailureDrawable(Drawable failureDrawable) //设置加载失败的动画 //.setFailureDrawableId(int failureDrawable) //以资源id设置加载失败的动画 //.setLoadingDrawable(Drawable loadingDrawable) //设置加载中的动画 //.setLoadingDrawableId(int loadingDrawable) //以资源id设置加载中的动画 //.setIgnoreGif(false) //忽略Gif图片 //.setParamsBuilder(ParamsBuilder paramsBuilder) //在网络请求中添加一些参数 //.setRaduis(int raduis) //设置拐角弧度 //.setUseMemCache(true) //设置使用MemCache,默认true /** * 加载图片的4个bind方法 */ x.image().bind(image01, urls[0]); x.image().bind(image02, urls[1], options);