android 文件上传工具类,Android快速开发架构PlanA(五),文件上传下载了解一下...
1.PlanA文件上传&下载的使用
PlanA架构集成第五篇,文件上传下载的使用,文件上传&下载在APP里面随处可见,发朋友圈要上传图片或者短视频,换个头像要上传选择的图片,office附件要看需要下载,APP版本更新需要下载apk等等,在APP里面,上传下载也算是必不可少的功能,这篇文章主要就是从简单实用出发,构造一个功能强大的文件上传下载框架。
文件上传/下载.png
2.文件上传
String taskId = RetrofitClient.getInstance()
.upload("api/uploadFile")
.param("token", "xxx")
.upFile(file)
.execute(new FileUploadCallback() {
@Override
public void onUpLoadSuccess(ResponseBody responseBody) {
Log.d("debug","上传成功");
}
@Override
public void onUpLoadFail(Throwable e) {
Log.e("error","上传失败");
}
@Override
public void onProgress(long bytesWritten, long contentLength) {
if (bytesWritten >= contentLength) { // 上传完成
Log.d("debug","当前上传进度100%");
} else {
int progress = (int) ((bytesWritten * 1.0) / contentLength * 100);
Log.d("debug","上传进度:" + progress + "%");
}
}
});
// 取消上传任务
RetrofitClient.getInstance().cancelRequest(taskId);
3文件下载
String filePath = Environment.getExternalStorageDirectory() + File.separator + "test.png";
String taskId = RetrofitClient.getInstance().download("files/test.png").execute(filePath, new FileDownloadCallback() {
@Override
public void onSuccess(File file) {
Log.d("debug","下载成功");
}
@Override
public void onFail(Throwable throwable) {
Log.e("error","下载失败");
}
@Override
public void onProgress(long current, long total) {
if (current >= total) { // 下载完成
Log.d("debug","当前下载进度:100%");
} else {
int progress = (int) ((current * 1.0) / total * 100);
Log.d("debug","下载进度:" + progress + "%");
}
}
});
// 取消下载任务
RetrofitClient.getInstance().cancelRequest(taskId);
android 文件上传工具类,Android快速开发架构PlanA(五),文件上传下载了解一下...相关推荐
- 操作SD卡,获取文件目录及文件工具类Android,listView
操作SD卡,获取文件目录及文件工具类Android 1.获取文件目录及文件工具类: DirectoryInfo FileScan 1.1 DirectoryInfo: package com.gls ...
- spring boot 文件上传工具类(bug 已修改)
以前的文件上传都是之前前辈写的,现在自己来写一个,大家可以看看,有什么问题可以在评论中提出来. 写的这个文件上传是在spring boot 2.0中测试的,测试了,可以正常上传,下面贴代码 第一步:引 ...
- FastDFS 文件上传工具类
FastDFS文件上传工具类 import org.csource.common.NameValuePair;import org.csource.fastdfs.ClientGlobal;impor ...
- 分享一个文件上传工具类
文件上传状态枚举类: View Code 1 package com.hoo.enums; 2 3 4 5 /** 6 7 * <b>function:</b> 文件上传状态 ...
- java的springboot项目操作阿里云OSS下载文件、查看文件内容、上传文件,自定义工具类
因为要从oss下载.查看.上传工具类,所以对这几个方法做了一个封装,已经经过测试,可以直接使用 1.yml添加上阿里云配置.添加maven配置 注意这里的objectName: xxx/xxx/,前面 ...
- 文件上传工具类FileUploadUtils
文件上传工具类FileUploadUtils StringUtil MimeTypeUtils FileUploadUtils 异常类 FileNameLengthLimitExceededExcep ...
- Java学习日记8:文件上传工具类的实现和服务器给客户端发送图片
文件上传的工具类: 每次文件上传要写很多东西,把这些封装成一个工具类,以后用起来就会方便很多. 先创建一个类存储上传文件的信息: package com.upload; /*** 每上传成功一个文件的 ...
- 阿里云oss文件上传工具类
阿里云oss文件上传工具类 阿里云oss 阿里云oss 导入文件阿里云oss的maven依赖 <!-- 阿里云oss依赖 --><dependency><groupId& ...
- FTP文件上传工具类
import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; import org.a ...
最新文章
- 综述 | 语言分析技术在社会计算中的应用
- vue 引入bootstarp --webpack
- php 带下划线的函数,[宜配屋]听图阁
- springboot集成邮箱功能
- java 装饰器模式
- labview利用簇模拟汽车控制_在LabVIEW应用程序中何时应采用面向对象技术 (翻译)...
- bzoj 1597 [Usaco2008 Mar]土地购买——斜率优化dp
- 鸿蒙系统上线 华为内部人员喷了,鸿蒙系统上线?华为人员表示:勿上当 山寨网站...
- strcore.cpp(156) 内存泄漏
- mysql数据 lt =_MySql之数据操作
- 离职10天,面了4家公司,我的感受...
- 微信小程序——发送模板消息
- 指数波段划分以及底部反弹行业特征统计分析
- 在VMware上安装Android虚拟机
- 微信公众号网页授权多域名解决方案
- 安利自己读CS博士的鸡汤
- 总结一下自己的linux历程
- java读取cmyk_用于检测CMYK图像的JAI ImageIO的纯Java替代品
- 为什么敲了许多年的代码,却仍然在原地踏步?| 程序员有话说
- 群晖DS918+ 二合一 分区扩充教程
热门文章
- 纵览神经架构搜索方法
- 设计模式-17-迭代器
- 网络工程师(2) 操作系统
- 由于 web 服务器上此资源的访问控制列表(acl)配置或加密设置,您无权查看此目录或页面。...
- spring将service添加事务管理,在applicationContext.xml文件中的设置
- [学习总结]6、Android异步消息处理机制完全解析,带你从源码的角度彻底理解
- 转载-做一个双向自豪的人
- AndroidStudio_下载和安装---Android原生开发工作笔记67
- Uncaught (in promise) Error: timeout of 10000ms exceeded---SpringCloud Alibaba_若依微服务框架改造---工作笔记009
- Vue插件_自己封装插件_以及使用自定义插件---vue工作笔记0017