浅析Android 快速实现图片压缩与上传功能
作者:wmz199123 时间:2022-10-15 23:58:01
由于最近项目更新功能比较的忙,也没时间去整理自己的知识点和管理自己的博客.在Android对手机相册中的图片的压缩和上传到服务器上,这样的功能在每个app开发中都会有这样的需求.所以今天就对android端怎么快速实现图片压缩和上传进行简单的分析.
首先需要对图片进行压缩,这方面可以使用第三方的库,我在实际的开发中使用的是 compile ‘top.zibin:Luban:1.0.9'使用也比较的方便,代码如下:
/**
*
* @param path 代表的是图片的uri路径
*/
private void getFile(Uri path) {
File file = new File(path.getPath());//创建文件
Luban.get(this)
.load(file) // 传入要压缩的图片
.putGear(Luban.THIRD_GEAR) // 设定压缩档次,默认三挡自己可以选择
.setCompressListener(new OnCompressListener() { // 设置回调
@Override
public void onStart() {
// 压缩开始前调用,可以在方法内启动 loading UI
}
@Override
public void onSuccess(File file) {
// 压缩成功后调用,返回压缩后的图片文件
zipIcon(file);
}
@Override
public void onError(Throwable e) {
}
}).launch();
}
// 压缩并上传至服务器
private void zipIcon(File file) {
RequestBody requestBody = RequestBody.create(MediaType.parse("image/*"), file);
MultipartBody.Part formData = MultipartBody.Part.createFormData(Constant.AVATAR, "xxx.png", requestBody);
//上传到服务器
// 这样得到formData文件 就可以通过上传文件的方式,上传到服务器上了.
}
来源:http://blog.csdn.net/wmz199123/article/details/76514131
标签:android,图片压缩,上传
0
投稿
猜你喜欢
Spring Boot Actuator监控端点小结
2023-02-15 05:04:23
详解C#中的System.Timers.Timer定时器的使用和定时自动清理内存应用
2022-11-07 14:09:54
Java设计模式之Strategy模式
2023-11-21 03:58:22
C# 时间戳转换实例
2022-12-07 12:17:57
Spring Bean的线程安全问题
2023-06-07 17:15:36
详解Spring Boot 事务的使用
2022-08-09 01:59:07
C#利用Openxml读取Excel数据实例
2021-05-27 18:27:06
Java-String类最全汇总(上篇)
2023-04-15 11:47:10
SpringBoot的API文档生成工具SpringDoc使用详解
2021-11-09 07:15:45
基于Java实现Json文件转换为Excel文件
2022-08-04 23:53:15
Android开发笔记之:复写按钮方法
2023-01-18 05:44:12
Android中的Launch Mode详情
2022-10-06 02:38:09
java的各种类型转换全部汇总(推荐)
2022-03-01 01:25:43
Unity3D中脚本的执行顺序和编译顺序
2023-11-07 01:50:31
java实现的各种排序算法代码示例
2023-01-29 03:48:27
Java桶排序之基数排序详解
2021-08-26 13:38:58
c#中WinForm用OpencvSharp实现ROI区域提取的示例
2023-03-22 13:54:10
C#加密解密类实例程序
2022-01-25 18:17:09
java 回调机制的实例详解
2023-12-04 10:03:04
WPF实现带筛选功能的DataGrid
2022-05-07 07:48:56