Android studio利用xutils进行文件下载

        对于Android开发过程中便捷的xutils框架,为我们的Android开发提供了很多较为便利的操作。简化代码,功能强大,本文主要对xutlis中的HttpUtils进行简单的使用介绍:

        本人使用的工具为Android studio3.1,xutils使用的比较老为xutils2.6。使用方法如下:

1、将目录转换为project模式,在app-》libs中将xutils复制进去,而后刷新便可,结果如下:

       Android studio利用xutils进行文件下载_第1张图片

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控件,效果如下:

Android studio利用xutils进行文件下载_第2张图片

 考虑到本案例下载的为多媒体控件,可以对其添加VideoView控件进行演示,在下载结束后,进行演示,效果如下:

其具体使用下回分解,篇幅有限且不能跑题太远。

Android studio利用xutils进行文件下载_第3张图片

 总结:

1、xutils就下载文件方面大大减低了编码的复杂度

2、记得添加权限以及路径在准确性

3、这点要标红,虽然比较愚蠢,但是一旦发生就很烦人,就是手机要联网,不然一直显示下载不了。因为代码没有错误,所以没有报错。。。

你可能感兴趣的:(Androidstudio,Android,studio,xutils)