charleyup

为自己吹过的🐮🍺奋斗终生.

微信JS-SDK1.4.0升级及相关接口调整

2018/06/21

背景

今年五月份微信团队发布了关于《分享功能调整》的公告。

具体调整点为:分享接口调用后,不再返回用户是否分享完成事件,即原先的cancel事件和success事件将统一为success事件。

同时,微信JS-SDK说明文档中也将相应的分享接口标注为(即将废弃),但并未给出具体弃用时间及替代方案。

近日在查看微信JS-SDK说明文档时发现新增了两个分享接口,及1.4.0的SDK,因此尝试着升级SDK并替换即将弃用的分享接口。

升级

新的分享接口需要JSSDK 1.4.0及客户端6.7.2(最新版)支持,为兼容老版本,生产环境暂不建议升级。

  1. 将引用的JS-SDK替换成1.4.0版本。(支持https)http://res.wx.qq.com/open/js/jweixin-1.4.0.js

  2. 通过config接口注入配置修改。

wx.config({
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    appId: '', // 必填,公众号的唯一标识
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名
    jsApiList: [
        // "onMenuShareAppMessage", // 获取“分享给朋友”按钮点击状态及自定义分享内容接口(即将废弃)
        // "onMenuShareTimeline" // 获取“分享到朋友圈”按钮点击状态及自定义分享内容接口(即将废弃)
        "updateAppMessageShareData", // 自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)
        "updateTimelineShareData" // 自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0)
    ] // 必填,需要使用的JS接口列表
});
  1. 调用新的分享接口
    wx.ready(() => {
     wx.updateAppMessageShareData({
         title: title, // 分享标题
         desc: desc, // 分享描述
         link: sharelink, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
         imgUrl: imgUrl // 分享图标
     }, resp => {
         //这里是回调函数
     });
     wx.updateTimelineShareData({
         title: title, // 分享标题
         link: sharelink, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
         imgUrl: imgUrl // 分享图标
     }, resp => {
         //这里是回调函数
     });
     // wx.onMenuShareAppMessage({
     //     title: title, // 分享标题
     //     desc: desc, // 分享描述
     //     link: sharelink, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
     //     imgUrl: imgUrl, // 分享图标
     //     success: resp => {
     //         // 分享成功回调
     //     },
     //     cancel: resp => {
     //         // 取消分享回调
     //     }
     // });
     // wx.onMenuShareTimeline({
     //     title: title, // 分享标题
     //     desc: desc, // 分享描述
     //     link: sharelink, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
     //     imgUrl: imgUrl, // 分享图标
     //     success: resp => {
     //         // 分享成功回调
     //     },
     //     cancel: resp => {
     //         // 取消分享回调
     //     }
     // });
    });

总结

微信分享一直是互联网产品拉新、裂变的营销利器,但对于用户体验确实有一定程度上的消极影响。微信团队做出调整的理由也是基于此:为鼓励用户自发分享喜爱的内容,减少“强制分享至不同群”等滥用分享能力,破坏用户体验的行为。

调整过后,运营同学们又得头疼了,诸如“分享给好友立即领取XXX”等营销手段可能不再好使了。

这个市场唯一不变的就是一直在变,而且越变越快,让我们一起拥抱变化、迎接未来~