关于微信公众平台分享新接口的一些疑问updateTimelineShareData,updateAppMessageShareData

hllll_huang 2018-10-17 02:45:11
加精
最近公司的公众号分享功能出现了问题,即无论分享成功或取消分享,都会跳success回调里面来,
由于业务需求 需要在用户分享成功的时候做一些业务处理,取消分享则不处理。
回去翻了一下微信文档,

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

经过测试,确实只有6.72版本的新版本才会出现这个问题,
6.72以下版本 onMenuShareTimeline ,onMenuShareAppMessage 这俩个分享接口当用户取消分享的时候是会跳到cancel的回调中的,

于是按照文档的要求 将原有用的分享接口 onMenuShareTimeline ,onMenuShareAppMessage 改为以updateTimelineShareData,updateAppMessageShareData,将引入的JSSDK 改成1.4.0,并按照文档的DEMO改了一下代码(以分享给朋友为例)
function Test(){
var url = window.location.href;
var openid = $("#openid").val();
var sign = $("#sign").val();
var remberId= $("#remberId").val();
$.ajax({
url: "<@spring.url '/getJSSDKSignature'/>", //请求的url地址
dataType: "json", //返回格式为json
data: {
"url":url,
}, //参数值
type: "GET", //请求方式
success: function(result) {
var appId = result.appId;
var timestamp = result.timestamp;
var nonceStr = result.nonceStr;
var signature = result.signature;
wx.config({
debug: true,
appId: appId,
timestamp: timestamp,
nonceStr: nonceStr,
signature: signature,
jsApiList: [
'updateAppMessageShareData',
'updateTimelineShareData',
]
});
wx.ready(function () { //需在用户可能点击分享按钮前就先调用
wx.updateAppMessageShareData({
"title": 'TEST', // 分享标题
"desc": 'TEST', // 分享描述
"link": 'https://www.xxxx.cn', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
"imgUrl": 'https://www.xxxx.cn', // 分享图标
}, function(res) {
alert("[调试信息]");
});
});
}
})

}

编写完代码,测试的时候 分享是没有问题的, 标题 描述都正常,但是不知道为什么 就是一直没有弹出回调信息,无论分享成功或取消分享 都没有回调信息。。。我是醉了啊,怎么感觉是微信的BUG ??? 有没有经历的大牛指点一下。。。
...全文
16881 36 打赏 收藏 转发到动态 举报
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
roy2wen 2019-04-05
  • 打赏
  • 举报
回复
牛莉就是一点刚
IDTC 2019-01-03
  • 打赏
  • 举报
回复
引用 40 楼 杨杨的歌 的回复:
那现在基本就是无解了
不知道有什么办法可以解决呢?
IDTC 2019-01-03
  • 打赏
  • 举报
回复
引用 39 楼 weixin_43995222 的回复:
这问题值得深思
不知道有什么办法可以解决呢?
杨杨的歌 2018-12-10
  • 打赏
  • 举报
回复
那现在基本就是无解了
9527� 2018-12-06
  • 打赏
  • 举报
回复
这问题值得深思
FNATING 2018-12-04
  • 打赏
  • 举报
回复
升到最新版本的分享接口之后总结的来讲 1,IOS可以分享,安卓分享不成功, 2,接收不到分享成功或者失败的回调,系统相关的业务逻辑需要修改。
weixin_43841359 2018-11-28
  • 打赏
  • 举报
回复
不错的网站找到了
hllll_huang 2018-11-19
  • 打赏
  • 举报
回复
升到最新版本的分享接口之后总结的来讲
1,IOS可以分享,安卓分享不成功,
2,接收不到分享成功或者失败的回调,系统相关的业务逻辑需要修改。
hllll_huang 2018-11-19
  • 打赏
  • 举报
回复
引用 25 楼 qq_22490167 的回复:
我也升级了最新的JS版本和用了最新的接口,IOS是没毛病的, 安卓的就一直分享不成功



是的。。所以我又退回去之前的版本了,
升到最新版本的分享接口之后总结的来讲
1,IOS可以分享,安卓分享不成功,
2,接收不到分享成功或者失败的回调,系统相关的业务逻辑需要修改。
IDTC 2018-11-19
  • 打赏
  • 举报
回复
引用 33 楼 hllll_huang 的回复:
升到最新版本的分享接口之后总结的来讲 1,IOS可以分享,安卓分享不成功, 2,接收不到分享成功或者失败的回调,系统相关的业务逻辑需要修改。
收不到是否分享成功的状态,那么业务基本上改动就非常大了
weixin_43723849 2018-11-17
  • 打赏
  • 举报
回复
顶顶顶顶顶顶顶顶顶顶顶
m0_37767316 2018-11-17
  • 打赏
  • 举报
回复
顶顶顶顶顶顶
weixin_43721686 2018-11-17
  • 打赏
  • 举报
回复
顶顶顶顶12
weixiaodou4477 2018-11-16
  • 打赏
  • 举报
回复
谢谢分享!实践ing
line_us 2018-11-15
  • 打赏
  • 举报
回复
先顶起来再说
qq_22490167 2018-11-13
  • 打赏
  • 举报
回复
我也升级了最新的JS版本和用了最新的接口,IOS是没毛病的, 安卓的就一直分享不成功
IDTC 2018-11-08
  • 打赏
  • 举报
回复
引用 23 楼 hllll_huang 的回复:
[quote=引用 22 楼 itccccc 的回复:] [quote=引用 20 楼 hllll_huang 的回复:] 而且安卓的似乎无法分享成功。
我倒没遇到这个问题[/quote] 我升级了最新的JS版本和用了最新的接口,IOS是没毛病的, 安卓的就一直分享不成功,您的可以?[/quote] Android可以,iOS不清楚,现在关键问题是无法获得用户是否已分享,这个不知道有没有办法自己解决
hllll_huang 2018-11-07
  • 打赏
  • 举报
回复
引用 22 楼 itccccc 的回复:
[quote=引用 20 楼 hllll_huang 的回复:]
而且安卓的似乎无法分享成功。

我倒没遇到这个问题[/quote]


我升级了最新的JS版本和用了最新的接口,IOS是没毛病的, 安卓的就一直分享不成功,您的可以?
IDTC 2018-11-01
  • 打赏
  • 举报
回复
引用 20 楼 hllll_huang 的回复:
而且安卓的似乎无法分享成功。
我倒没遇到这个问题
IDTC 2018-11-01
  • 打赏
  • 举报
回复
引用 19 楼 hllll_huang 的回复:
[quote=引用 18 楼 itccccc 的回复:] [quote=引用 17 楼 hllll_huang 的回复:] wx.ready(function () { //需在用户可能点击分享按钮前就先调用 wx.updateAppMessageShareData({ title: '', // 分享标题 desc: '', // 分享描述 link: '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: '', // 分享图标 success: function () { // 设置成功 } }); 官方文档现在改成这样子了, 变成了success, 给出的注释是 设置成功。。汗。。。
但是我试了,好像1.4的JS-SDK,无论如何都不回调success函数[/quote] 他现在这个success函数 好像就不是回调的, 看字面意思好像是你这个updateAppMessageShareData 接口注册成功之后他就会调SUCCESS了。[/quote] 这样的话,感觉就没什么意义了
加载更多回复(16)

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧