这是友盟提供的压缩方法,但是还是会有点慢,所以我们自己去压缩图片。

        new Thread(new Runnable() {@Overridepublic void run() {String picUrl = goodsDetailsBean.getData().getPro_Info().get(0).get商品图片().split("\\|")[0];Bitmap bitmap ;if(!picUrl.equals("")){bitmap = PhotoBitmapUtils.create(picUrl);}else{bitmap = BitmapFactory.decodeResource(SafShopDetailActivity.this.getResources(), R.drawable.accountdefault);}Message msg = new Message();msg.what = SHARE;msg.obj = bitmap;mHandler.sendMessage(msg);}}).start();

//根据url生成bitmap,需要在子线程中调用
public static Bitmap create(String path) {
Bitmap bit = null;
try {
URL url1 = new URL(path);
InputStream is1 = url1.openStream();
bit = BitmapFactory.decodeStream(is1);
} catch (IOException e) {
e.printStackTrace();
}
return bit;
}

//压缩图片
public static Bitmap compression(Bitmap bitmap) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);// 质量压缩方法,这里100表示不压缩,把压缩后的数据存放到baos中
int options = 90;
while (baos.toByteArray().length / 1024 > 128) { // 循环判断如果压缩后图片是否大于100kb,大于继续压缩
baos.reset(); // 重置baos即清空baos
bitmap.compress(Bitmap.CompressFormat.JPEG, options, baos);// 这里压缩options%,把压缩后的数据存放到baos中
options -= 10;// 每次都减少10
}

    ByteArrayInputStream isBm = new ByteArrayInputStream(baos.toByteArray());// 把压缩后的数据baos存放到ByteArrayInputStream中bitmap = BitmapFactory.decodeStream(isBm, null, null);// 把ByteArrayInputStream数据生成图片return bitmap;
}

//最后直接调用
UMImage image = new UMImage(activity, compression((Bitmap) msg.obj)));
UMImage imageThumb = new UMImage(activity, compression((Bitmap) msg.obj)));
image.setThumb(imageThumb);
image.compressStyle = UMImage.CompressStyle.SCALE;//大小压缩,默认为大小压缩,适合普通很大的图
//image.compressStyle = UMImage.CompressStyle.QUALITY;//质量压缩,适合长图的分享压缩格式设置
//image.compressFormat = Bitmap.CompressFormat.PNG;//用户分享透明背景的图片可以设置这种方式,但是qq好友,微信朋友圈,不支持透明背景图片,会变成黑色
new ShareAction(activity).setPlatform(platform)
.setCallback(mShareListener)
.withMedias(image)
.share();

Android 友盟分享图片太大打开微信慢相关推荐

  1. android友盟分享图标是英文,GitHub - GDMiao/UmengEnclosed: 友盟分享二次封装,现有文字分享、图片分享、网页分享等多种分享功能。...

    对友盟分享(Umeng-Share)的功能封装 引言 本文档针对友盟分享(6.9.0)进行了功能封装,完成的对于 文字.图片.网页 分享功能封装,如有其它封装要求请根据本文档的封装思路和友盟分享 ap ...

  2. Android 友盟分享躺过的几个坑,大坑,坑爹啊

    前言:公司上线了一个项目,做Android 客户端集成友盟分享,在做得过程中,遇到了下面3个问题,希望其他小伙伴注意. ( 友盟在线客服 QQ : 800083942  ) 错误1: 1.错误描述 我 ...

  3. Android 友盟分享 开发日记

    公司项目涉及到分享的部分了,看友盟的平台相当的强大,觉得就用这个了,本以为也就一个上午的事情,哪知道在这个坑里面足足蹲了两天的时间,下面我将详细介绍下友盟分享的具体过程 tip:强烈建议配合开发文档一 ...

  4. Android 友盟分享,让你后顾无忧,麻麻再也不用担心我的学习。

    咱们上回书说道:不用微信SDK也能分享. Android 微信分享,无需那么麻烦. 这次写友盟分享一个是避免微信新版本改动过大,可能导致无法做到Intent跳转界面的分享实现,还有就是不能局限于一个微 ...

  5. android 友盟分享-圆角图标有黑底色问题

    圆角图片分享边角会变黑色,解决方案有: 1.QQ分享等: UMImage umImage = new UMImage(this, R.drawable.ic_share_left);umImage.c ...

  6. android 友盟分享混淆,Android——记umeng sdk 混淆之后的一次crash

    Failed to register native method org.android.spdy.SpdyAgent.freeAgent crash 异常片段如上: 结合上下文怀疑是umeng sd ...

  7. Swift使用友盟分享

    1注册友盟账号 2添加应用 填写应用信息 得到AppKey 3使用CocoaPods集成友盟分享 4设置AppKey 5微信分享 注册微信应用 获取AppID和AppSecret 6添加微信AppID ...

  8. 友盟umeng分享微信和朋友圈,图片太大,拉起微信很慢的处理方案

    今天测试提了个问题,说微信分享反应很慢,而且说上个版本都还是快的,这个版本就慢了,我回忆了下,这个版本关于分享的都没做改动啊,我就去调查了下原因,原来是分享时候的图片超级大导致的,上个版本分享的图片很 ...

  9. Android 友盟社会化分享的集成与封装

    Android 友盟社会化分享的集成与封装 分享是APP中非常高频的操作之一,在Android的开发环境中,第三方分享框架也有很多.比较流行的包括 极光社会化分享(sharesdk).友盟社会化分享( ...

最新文章

  1. 2014全年目标及执行情况跟踪
  2. python函数装饰器参数 参数_【转】python 装饰器功能以及函数参数使用
  3. [云炬创业基础笔记]第六章商业模式测试11
  4. java多线程实现端口扫描,使用Java开发多线程端口扫描工具
  5. php fetchall 返回值为0_PHP实现延迟执行程序
  6. mysql 数据字典 php_php生成mysql数据库数据字典的程序代码
  7. [导入] 堆和栈的区别
  8. 跨浏览器开发工作小结
  9. 解决eclipse无法解析导入org.eclipse.swt库
  10. swift中变量的几种类型
  11. mysql屏蔽_MySQL中的企业数据屏蔽
  12. android 创建typeface 对象,java – 检查Android中的Typeface对象的族
  13. android 扩展textview,Android可收缩/扩展的TextView【1】
  14. python+seleniun+pyqt5 易班经验刷取开发记录
  15. 探索汽车行业大数据应用
  16. 在 LaTeX 中插入图片
  17. Excel报:文件已损坏无法打开错误问题解决
  18. 企业基因决定企业命运
  19. 宝塔linux面板命令大全
  20. 如何将D盘分区为多个磁盘(E盘,F盘等)window 10

热门文章

  1. 厨房必备基本调料及作用
  2. 华为机试---火眼金睛
  3. 袁沁:《第二幸福的人》这一刻,我用眼泪思念你!
  4. Tyvj(无向图的桥)
  5. dev c++乱码问题的解决
  6. ROS笔记之使用C++打印出当前运行的所有ROS节点
  7. android电视用久了会卡吗,电视卡顿怎么办?三个方法,轻松让卡顿的电视满血复活...
  8. Linux内核学习:kmalloc
  9. 人工智能发展到什么程度 学Python编程怎么样
  10. 如何批量修改文件后缀名?