十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Android中怎么实现图片压缩与上传功能,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
创新互联长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为平罗企业提供专业的网站设计、成都网站制作,平罗网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
首先需要对图片进行压缩,这方面可以使用第三方的库,我在实际的开发中使用的是 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文件 就可以通过上传文件的方式,上传到服务器上了. }
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。