Android 微信网址分享添加网络图片

作者: 视掘 | 来源:发表于2017-04-12 10:45 被阅读2173次

    本文是将微信网址分享的图片改为用户头像,通过头像的url获取

    public static void share(String CustomEventData,String title,String titlle_detail,String imgUrl)throwsMalformedURLException {

    Log.e(TAG,"share##########################");

    Log.e(TAG,imgUrl);

    WXWebpageObject webpage =newWXWebpageObject();

    webpage.webpageUrl="https://fir.im/5et2";

    WXMediaMessage msg =newWXMediaMessage(webpage);

    msg.title= title;

    msg.description= titlle_detail;


    //加载本地图片

    //        Bitmap thumb = BitmapFactory.decodeResource(getContext().getResources(), R.drawable.zhuye_tip);

    //        msg.setThumbImage(thumb);

    //        thumb.recycle();

    //加载网络图片********

    //注意下方的压缩

    try{

    Bitmap thumb = BitmapFactory.decodeStream(new URL(imgUrl).openStream());

    //注意下面的这句压缩,120,150是长宽。

    //一定要压缩,不然会分享失败

    Bitmap thumbBmp = Bitmap.createScaledBitmap(thumb,120,150,true);

    //Bitmap回收

    thumb.recycle();

    msg.thumbData= Util.bmpToByteArray(thumbBmp,true);

    //            msg.setThumbImage(thumb);

    }catch(IOException e) {

    e.printStackTrace();

    }

    Log.e(TAG,msg.title);

    Log.e(TAG,msg.description);

    //构造Req

    SendMessageToWX.Req req =newSendMessageToWX.Req();

    req.transaction=buildTransaction("webpage");

    req.message= msg;

    Log.e(TAG,CustomEventData);

    if(Integer.parseInt(CustomEventData) ==0){

    req.scene= SendMessageToWX.Req.WXSceneSession;

    }

    else{

    req.scene= SendMessageToWX.Req.WXSceneTimeline;

    }

    api.sendReq(req);//发送到微信

    Log.e(TAG,"share###### END ####################");

    }

    相关文章

      网友评论

      • a3b88d83ee21:楼主请问你的运行会出现报错吗 我照着你的运行会报android.os.NetworkOnMainThreadException 错误、请问你是怎么解决的?
        78493c8d3a05:不要在UI线程中进行网络操作(加载网络图片),在子线程中

      本文标题:Android 微信网址分享添加网络图片

      本文链接:https://www.haomeiwen.com/subject/oeamottx.html