浅析Android 快速实现图片压缩与上传功能

发布时间 - 2026-01-11 02:35:47    点击率:

由于最近项目更新功能比较的忙,也没时间去整理自己的知识点和管理自己的博客.在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文件 就可以通过上传文件的方式,上传到服务器上了.  
  }


# android  # 图片压缩上传  # 图片压缩  # android图片压缩的3种方法实例  # Android图片压缩方法并压缩到指定大小  # android 将图片压缩到指定的大小的示例  # Android图片压缩上传之基础篇  # Android中3种图片压缩处理方法  # Android图片压缩以及优化实例  # Android图片压缩几种方式总结  # 详解Android 图片的三级缓存及图片压缩  # Android实现简单图片压缩的方法  # Android 高效图片压缩的实现  # 自己的  # 的是  # 会有  # 我在  # 也没  # 上了  # 可以使用  # 可以选择  # 第三方  # 就对  # 中都  # 回调  # 就可以  # 上传文件  # 传至  # 器上  # 上传  # 在每个  # 博客  # brush 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  JS实现鼠标移上去显示图片或微信二维码  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  如何快速配置高效服务器建站软件?  Android okhttputils现在进度显示实例代码  网站图片在线制作软件,怎么在图片上做链接?  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  JavaScript常见的五种数组去重的方式  Android GridView 滑动条设置一直显示状态(推荐)  如何有效防御Web建站篡改攻击?  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  如何为不同团队 ID 动态生成多个非值班状态按钮  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧  深圳网站制作的公司有哪些,dido官方网站?  使用spring连接及操作mongodb3.0实例  手机软键盘弹出时影响布局的解决方法  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  免费网站制作appp,免费制作app哪个平台好?  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  JavaScript Ajax实现异步通信  UC浏览器如何设置启动页 UC浏览器启动页设置方法  网页设计与网站制作内容,怎样注册网站?  如何用西部建站助手快速创建专业网站?  iOS UIView常见属性方法小结  百度浏览器如何管理插件 百度浏览器插件管理方法  Laravel如何配置任务调度?(Cron Job示例)  如何在云主机快速搭建网站站点?  如何用腾讯建站主机快速创建免费网站?  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  iOS中将个别页面强制横屏其他页面竖屏  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  海南网站制作公司有哪些,海口网是哪家的?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  网站制作大概多少钱一个,做一个平台网站大概多少钱?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  如何批量查询域名的建站时间记录?  如何用好域名打造高点击率的自主建站?  高性价比服务器租赁——企业级配置与24小时运维服务  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】