对于Android开发过程中便捷的xutils框架,为我们的Android开发提供了很多较为便利的操作。简化代码,功能强大,本文主要对xutlis中的HttpUtils进行简单的使用介绍:
本人使用的工具为Android studio3.1,xutils使用的比较老为xutils2.6。使用方法如下:
1、将目录转换为project模式,在app-》libs中将xutils复制进去,而后刷新便可,结果如下:
文章图片
2、添加权限(联网、写入SD卡)
3、下载代码:
String url=et_path.getText().toString().trim();
//获取url路径
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//sd卡是否挂载
final String path=Environment.getExternalStorageDirectory() + File.separator + "mv1.mp4";
//设置存储路径
Toast.makeText(getApplicationContext(),path,Toast.LENGTH_SHORT).show();
HttpUtils httpUtils=new HttpUtils();
httpUtils.download(url, path, new RequestCallBack() {
@Override
public void onSuccess(ResponseInfo responseInfo) {
//下载成功
File file=responseInfo.result;
//file变为下载的文件}@Override
public void onFailure(HttpException e, String s) {
//下载失败
Toast.makeText(getApplicationContext(),"网络错误",Toast.LENGTH_SHORT).show();
}@Override
public void onStart() {
Toast.makeText(getApplicationContext(),"下载开始",Toast.LENGTH_SHORT).show();
super.onStart();
}@Override
public void onLoading(long total, long current, boolean isUploading) {
//下载过程中total为总大小,current为当前下载大小
super.onLoading(total, current, isUploading);
}
});
}
至此下载核心过程演示完毕。当然为了直观获取下载效果,我在上面添加了progress控件,效果如下:
文章图片
考虑到本案例下载的为多媒体控件,可以对其添加VideoView控件进行演示,在下载结束后,进行演示,效果如下:
其具体使用下回分解,篇幅有限且不能跑题太远。
文章图片
总结:
1、xutils就下载文件方面大大减低了编码的复杂度
2、记得添加权限以及路径在准确性
【Androidstudio|Android studio利用xutils进行文件下载】3、这点要标红,虽然比较愚蠢,但是一旦发生就很烦人,就是手机要联网,不然一直显示下载不了。因为代码没有错误,所以没有报错。。。