浅析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
  • asp之家 软件编程 m.aspxhome.com