微信的6种类型分享

微信的分享做的真的特别好,类型多样,数据互通性特别强。尤其最近又增加了新的小程序的分享类型,使得APP数据与小程序数据互通,形成了一个相互作用的闭环,这篇为集成微信分享的工作记录。

微信分享的6种类型

1.文字类型分享
2.图片类型分享
3.音乐类型分享
4.视频类型分享
5.网页类型分享
6.小程序类型分享

** 分享或收藏的目标场景,通过修改scene场景值实现。
发送到聊天界面——WXSceneSession
发送到朋友圈——WXSceneTimeline
添加到微信收藏——WXSceneFavorite **

ok,先看看我分享出来的样式吧


微信的6种类型分享_第1张图片
image.png

如何分享?

1.将sdk放入工程中
2.注册微信API
3.按照项目需求,分享不同类型

文字分享类型代码

       //初始化一个WXTextObject对象,填写分享的文本内容
        WXTextObject textObject = new WXTextObject();
        textObject.text = shareEntity.shareTitle;

        //初始化WXMediaMessage对象
        WXMediaMessage msg = new WXMediaMessage();
        msg.mediaObject = textObject;
        msg.description = shareEntity.shareTitle;

        //构造一个Req
        SendMessageToWX.Req req = new SendMessageToWX.Req();
        req.transaction = buildTransaction("text");
        req.message = msg;
        req.scene = SendMessageToWX.Req.WXSceneSession;
        api.sendReq(req);

图片分享类型代码


        Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.mipmap.share_image);

        //初始化WXImageObject和WXMediaMessage对象
        WXImageObject imageObject = new WXImageObject(bmp);
        WXMediaMessage msg = new WXMediaMessage();
        msg.mediaObject = imageObject;

        //设置缩略图
        Bitmap thumb = BitmapFactory.decodeResource(getResources(), R
                .mipmap.share_image);
        msg.thumbData = comBitmapOption(thumb);

        //构造一个Req
        SendMessageToWX.Req req = new SendMessageToWX.Req();
        req.transaction = buildTransaction("img");
        req.message = msg;
        req.scene = SendMessageToWX.Req.WXSceneSession;
        api.sendReq(req);

小程序分享类型代码

要求发起分享的App与小程序属于同一微信开放平台帐号。
目前仅支持分享小程序类型消息至会话。
若客户端版本低于6.5.6,小程序类型分享将自动转成网页类型分享。开发者必须填写网页链接字段,确保低版本客户端能正常打开网页链接。
小程序的原始ID获取方法:登录小程序后台-设置-基本设置-帐号信息

  WXMiniProgramObject miniProgram = new WXMiniProgramObject();
        miniProgram.webpageUrl ="http://www.xiaohongchun.com.cn";
        miniProgram.userName = "【小程序ID】";
        miniProgram.path = "pages/indexApp/indexApp";

        WXMediaMessage msg = new WXMediaMessage(miniProgram);
        msg.title = "小程序标题";
        msg.description = "小程序描述";
        Bitmap thumb = BitmapFactory.decodeResource(getResources(), R
                .mipmap.ic_launcher);
        msg.thumbData = comBitmapOption(thumb);

        SendMessageToWX.Req req = new SendMessageToWX.Req();
        req.transaction = buildTransaction("miniProgram");
        req.message = msg;
        req.scene = SendMessageToWX.Req.WXSceneSession;
        api.sendReq(req);

剩下的分享类型参考完整代码吧 https://github.com/kevinTutu/WXShare.git

你可能感兴趣的:(微信的6种类型分享)