android微信源生SDK分享问题

老生常谈了,不过还是记录一下这些坑比较合适!今天测试忽然发现,微信分享出去的条目,自身机子可以看到图片,而别人的手机上却发现缩略图没了,成为另一个链接黑图。这种问题自然是先考虑一下是否自身图片资源有啥问题,经过查看,图片并无毛病!因此只能另寻他法了。百度上很多答案大同小异,都说是图片太大(微信官方也指出:android分享图片不能大于32K),但是实际却是当图片大于32K,根本不能分享成功!因此这并不是我的问题原因!讲到这顺便附上分享图片时,对图片压缩处理的方法吧:
我们都知道微信源生分享的方法(带标题的链接)大致是这样的

//注意传入的数据不能大于10M,开发文档上写的        WXWebpageObject webpage = new WXWebpageObject();        webpage.webpageUrl = "url";//链接地址        WXMediaMessage msg = new WXMediaMessage(webpage);        msg.title = "title";//标题        msg.description = "content";//内容、描述        //msg.mediaObject实际上是个IMediaObject对象,        //它有很多实现类,每一种实现类对应一种发送的信息,        //比如WXTextObject对应发送的信息是文字,想要发送文字直接传入WXTextObject对象就行        //官方文档介绍这个bitmap不能超过32kb,如果超过32kb则抛异常,分享失败        //如果一个像素是8bit的话换算成正方形的bitmap则边长不超过181像素,边长设置成150是比较保险的        //或者使用bmpToByteArray(thumbBitmap);省去自己转换二进制数据的过程        //在这设置缩略图        Bitmap thumb = BitmapFactory.decodeResource(m_Context.getResources(), R.drawable.icon);        //方法一:bmpToByteArray(Bmp,needrecycle)方法控制图片质量--压缩率、分辨率//        msg.thumbData = bmpToByteArray(thumb, true);        //方法二:msg.setThumbImage(Bmp)方法控制图片实际尺寸--宽高        Bitmap thumbBmp = Bitmap.createScaledBitmap(thumb, 100, 100, false);//API方法,自己点进去看100,100就是设置图片宽高的        msg.setThumbImage(thumbBmp);        SendMessageToWX.Req req = new SendMessageToWX.Req();        req.transaction = buildTransaction("webpage");        req.message = msg;        req.scene = SendMessageToWX.Req.WXSceneSession;   //设置发送给朋友//      req.scene = SendMessageToWX.Req.WXSceneTimeline;    //设置发送到朋友圈        msgApi.sendReq(req);public static byte[] bmpToByteArray(final Bitmap bmp, final boolean needRecycle) {        ByteArrayOutputStream output = new ByteArrayOutputStream();        bmp.compress(Bitmap.CompressFormat.JPEG, 90, output);//CompressFormat.JPEG是图片格式,也可以选择CompressFormat.PNG; 90是压缩率        if (needRecycle) {            bmp.recycle();        }        byte[] result = output.toByteArray();        try {            output.close();        } catch (Exception e) {            e.printStackTrace();        }        return result;    }

好了,言归正传,再来说说分享以后为什么有的不能显示缩略图吧。。。原文在这!
经测试,发现title或者desc方案中不能携带“红包”或者“现金”等关键字!否则会被微信屏蔽!

更多相关文章

  1. android 方法数越界问题 65536/64k(方法数超过65535)
  2. Android Excel 解析 xls 和 xlsx,方法也可以很简单
  3. Android P (4)一种绕过Android P上非SDK接口限制的简单方法
  4. 一起写一个Android图片轮播控件
  5. Android OTA包重新签名的方法
  6. 【Android语音合成TTS】百度语音接入方法,和使用技巧详解
  7. Android中高效的显示图片之二——在非UI线程中处理图片
  8. 通过wifi连接android设备的方法

随机推荐

  1. Android事件分发机制完全解析,带你从源码
  2. Android(安卓)4.0 Launcher2源码分析——
  3. android控件常用属性区别
  4. [置顶] EditText属性大全
  5. Android开发效率—Eclipse快捷键
  6. Android中startService的使用及Service生
  7. Android(安卓)Studio试用说明
  8. Android(安卓)中调试手段 打印函数调用栈
  9. Android处理ListView的条目长按事件
  10. Android高手应该精通哪些内容?