友盟单图片分享遇到的问题小记

本文介绍了在安卓应用中实现截图监听并分享到社交平台时遇到的问题,如微信和QQ无法读取本地图片数据。通过将图片转换为Bitmap解决了问题。同时提到了可能的错误原因,如图片过大,以及如何处理这些问题。解决方案包括从文件流、资源文件、R文件和Bitmap创建UMImage对象,并提到需要确保正确添加权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

UMImage image = new UMImage(ShareActivity.this, "imageurl");//网络图片

UMImage image = new UMImage(ShareActivity.this, file);//本地文件

UMImage image = new UMImage(ShareActivity.this, R.drawable.xxx);//资源文件

UMImage image = new UMImage(ShareActivity.this, bitmap);//bitmap文件

UMImage image = new UMImage(ShareActivity.this, byte[]);//字节流

最近做了一个app内截屏监听 并本地分享截屏图片的小功能,ps:有时间会分享截屏监听的技术点,当把本地图片路径放进去并点击分享时,友盟并无反应,查看log得知走到了onEorror,打印message得知微信报的错误是2003,当前版本不支持,qq报的是读取不到数据,很神奇,还能上天?网络的路径直接放没什么问题,想到安卓手机乱七八糟的存贮路径,楼主直接将本地截图拿到转换成bitmap问题解决,转换方法很简单下面自己拿

 1.以文件流的方式,假设在sdcard下有 test.png图片(用到流记得trycatch)

FileInputStream fis = new FileInputStream("/sdcard/test.png");

Bitmap bitmap  = BitmapFactory.decodeStream(fis);

 2. 以R文件的方式,假设 res/drawable下有 test.jpg文件

 Bitmap  bitmap = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable.test);

当然,这里还有一种可能性报错就是图片过大,适量压缩即可,太简单不细说了(如果忘了加权限那emmmm)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值