微信公众号分享接口

 

我使用了新版的网页分享接口在微信WeChat6.6.6低版本的微信客户端上不支持。

 

 

最后我新版本的接口和老版都写上了。

$.ajax({
  url: 'http://h5.descente-china.com.cn/weChat/weChatApi.php',
  type: 'POST',
  async: true,
  data: {url: location.href.split('#')[0]},
  dataType: 'json',
  cache: false,
  success: function (data) {
    wx.config({
      debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
      appId: data['appId'], // 必填,公众号的唯一标识
      timestamp: data['timestamp'], // 必填,生成签名的时间戳
      nonceStr: data['nonceStr'], // 必填,生成签名的随机串
      signature: data['signature'],// 必填,签名
      jsApiList: ['checkJsApi', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage', 'onMenuShareTimeline', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone'] // 必填,需要使用的JS接口列表
    });


    wx.ready(function () {   //需在用户可能点击分享按钮前就先调用

      wx.checkJsApi({
        jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage', 'onMenuShareTimeline', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone'], // 需要检测的JS接口列表,所有JS接口列表见附录2,
        success: function (res) {
          // 以键值对的形式返回,可用的api值true,不可用为false
          // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
          // alert(JSON.stringify(res));
        }
      });

      wx.updateAppMessageShareData(shareData, function (res) {
//这里是回调函数
      });

      wx.updateTimelineShareData(shareData, function (res) {
//这里是回调函数
      });

      wx.onMenuShareAppMessage(shareData, function (res) {
//这里是回调函数
      });

      wx.onMenuShareTimeline(shareData, function (res) {
//这里是回调函数
      });
      wx.onMenuShareQQ(shareData, function (res) {
//这里是回调函数
      });
      wx.onMenuShareWeibo(shareData, function (res) {
//这里是回调函数
      });
      wx.onMenuShareQZone(shareData, function (res) {
//这里是回调函数
      });
    });

  }
});

 

 

分享功能调整

为鼓励用户自发分享喜爱的内容,减少“强制分享至不同群”等滥用分享能力,破坏用户体验的行为,微信公众平台分享功能即日起做出如下调整:

1、7月5日起新提交的版本,用户从小程序小游戏中分享消息给好友时,开发者将无法获知用户是否分享完成,也无法在分享后立即获得群ID。该策略在最新版开发者工具上,可以选择基础库 2.0.8版本预先体验。具体调整点为:

(1)分享接口调用后,将不再返回分享结果事件。详情可参考转发介绍

(2)通过调用 wx.showShareMenu 并且设置 withShareTicket 为 true ,当用户将小程序转发到任一群聊之后,不再支持获取到此次转发的 shareTicket。但是当此转发卡片在群聊中被其他用户打开时,依然可以在 App.onLaunch() 或 App.onShow 获取到 shareTicket。详情可参考获取更多转发信息

2、6月份新版微信客户端发布后,用户从微信内的网页分享消息给微信好友,以及分享到朋友圈,开发者将无法获知用户是否分享完成。具体调整点为:

(1)分享接口调用后,不再返回用户是否分享完成事件,即原先的cancel事件和success事件将统一为success事件。详情可参考微信JSSDK说明文档

(2)在6月份新版微信客户端上,微信会提供新的自定义分享卡片标题、简介和配图的能力。该接口不支持获知用户是否分享出自己的网页。

(3)在新版自定义分享能力发布后,原有认证公众号的“获取分享到朋友圈按钮点击状态及自定义分享内容接口”和“获取分享给朋友按钮点击状态及自定义分享内容接口”权限将逐步回收,请开发者关注后续站内信通知。

3、6月份新版微信客户端发布后,用户从App中分享消息给微信好友,或分享到朋友圈时,开发者将无法获知用户是否分享完成。具体调整点为:

(1)分享接口调用后,不再返回用户是否分享完成事件,即原先的cancel事件和success事件将统一为success事件。

微信团队
2018年05月16日

 

 

分享接口

请注意,原有的 wx.onMenuShareTimeline、wx.onMenuShareAppMessage、wx.onMenuShareQQ、wx.onMenuShareQZone 接口,即将废弃。请尽快迁移使用客户端6.7.2及JSSDK 1.4.0以上版本支持的 wx.updateAppMessageShareData、updateTimelineShareData 接口。

posted on 2018-11-07 15:49  鲲跃北溟  阅读(1850)  评论(0编辑  收藏  举报

导航