okHttp 文件上传:
首先我是通过国内的一位大牛(同时也是我很佩服的一个佼佼者)的博客中总结出自己的一系列的步骤:
第一:当我听到okHttp时,首先想到的是进行在gittub上查询源码和一些大牛的源码,将他们的源码下载下来之后进行okHttp官方文档的步骤进行执行。
第二:自定义一个方法(下载大文件的方法)具体步骤如下所示:
public void downloadOkHttpFile() { String url = "http://vfx.mtime.cn/Video/2017/02/18/mp4/170218171317773949.mp4"; OkHttpUtils// .get()// .url(url)// .build()// .execute(new FileCallBack(Environment.getExternalStorageDirectory().getAbsolutePath(), "okHttp_utils_downLoad.mp4")//@program1:为文件下载的路径
@program2文件名称及格式 { @Override public void onBefore(Request request, int id) { } @Override public void inProgress(float progress, long total, int id) { progressBar.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()); } }); }第三:创建完此方法不难发现还需要一个进度条吧!!所以此时需要我们自己创建一个进度条的布局及界面中初始化它
在FileCallBack接口回调的方法中不难发现重写的几个方法:onbefore方法(我认为此方法中进行的是请求的方式和改变接口地址的一些操作等等) ;onProgress方法(从单词字面不难发现是关于进度条的一些操作也就是更新进度条等等);onError(下载错误的一些操作);onResponse(获取文件的绝对路径)
切记:不要忘记加权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
以上就是下载文件的一些操作是不是感觉很简单