微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解


Posted in Javascript onMarch 29, 2019

最近开发一个项目时,有微信H5网页自定义分享功能,使用了微信JS-SDK的分享到好友和分享到朋友圈功能。

微信开发文档这样写的

自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)

wx.ready(function () {  //需在用户可能点击分享按钮前就先调用
wx.updateAppMessageShareData({
title: '', // 分享标题
desc: '', // 分享描述
link: '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: '', // 分享图标
success: function () {
// 设置成功
}
});

自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0)

wx.ready(function () {   //需在用户可能点击分享按钮前就先调用
wx.updateTimelineShareData({
title: '', // 分享标题
link: '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: '', // 分享图标
success: function () {
// 设置成功
}
});

看起来很简单,直接加入到H5网页里面了

wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [
'updateAppMessageShareData',
'updateTimelineShareData'
] // 必填,需要使用的JS接口列表
});

其他参数参考根据自己情况填写,并设置debug: true 

测试环境:

微信Web开发者工具,测试接口,ok

苹果X,查看debug的弹出信息,一切ok;

分享测试,一切ok

大工搞成。咦,等下,好像漏了什么。。。。。。安卓呢?

结果果然漏了,安卓测试分享朋友圈和发送给好友,自定义分享功能都无效,仅仅分享为一个链接而已。

这个问题苹果手机好的,安卓不行,并且微信web开发者工具测试接口都是好的,那问题应该不是接口调用(后台数据都是一样的),应该是和客户端有关,但又找不到相关资料。

百思不得其姐,困惑了好久,各种度娘也没有找到正确答案。某天突发奇想,新的接口不行,那旧的接口呢?

于是乎测试开始:

加入两个旧分享接口onMenuShareAppMessage和onMenuShareTimeline,然后写了个测试方法

jsApiList: [
  'updateAppMessageShareData',
  'updateTimelineShareData',
  'onMenuShareAppMessage', //旧的接口,即将废弃
  'onMenuShareTimeline' //旧的接口,即将废弃
]// 必填,需要使用的JS接口列表

获取“分享给朋友”按钮点击状态及自定义分享内容接口(即将废弃)

wx.onMenuShareAppMessage({
title: 'test', // 分享标题
desc: 'test_desc', // 分享描述
link: 'www.jianshu.com', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: '', // 分享图标
type: '', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: function () {
// 用户点击了分享后执行的回调函数
}
});

然后随便写了个测试发现居然成!功!了! 不过自定义分享内容还是新接口updateAppMessageShareData定义的。

删除旧接口定义再测试,发现仅仅在jsApiList加入旧接口声明也是可以的!

问题解决,这个真的是JS-SDK的一个坑。这篇文章希望能帮助到遇到相似问题的同学。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
兼容ie、firefox的图片自动缩放的css跟js代码分享
Jan 21 Javascript
自写的jQuery异步加载数据添加事件
May 15 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
Oct 30 Javascript
Bootstrap栅格系统学习笔记
Nov 25 Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
Jan 05 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
Feb 08 Javascript
微信小程序上传图片实例
May 28 Javascript
详解create-react-app 自定义 eslint 配置
Jun 07 Javascript
使用json-server简单完成CRUD模拟后台数据的方法
Jul 12 Javascript
详解使用React制作一个模态框
Mar 14 Javascript
Vue 实现前进刷新后退不刷新的效果
Jun 14 Javascript
微信小程序(订阅消息)功能
Oct 25 Javascript
详解vue配置后台接口方式
Mar 29 #Javascript
微信小程序学习笔记之获取位置信息操作图文详解
Mar 29 #Javascript
点击按钮弹出模态框的一系列操作代码实例
Mar 29 #Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
Mar 29 #Javascript
微信小程序生成分享海报方法(附带二维码生成)
Mar 29 #Javascript
微信小程序学习笔记之文件上传、下载操作图文详解
Mar 29 #Javascript
微信小程序生成二维码的示例代码
Mar 29 #Javascript
You might like
php实现首页链接查询 友情链接检查的代码
2010/01/05 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
深入理解PHP 数组之count 函数
2016/06/13 PHP
给大家分享几个常用的PHP函数
2017/01/15 PHP
使用php实现网站验证码功能【推荐】
2017/02/09 PHP
Avengerls vs Newbee BO3 第三场2.18
2021/03/10 DOTA
JSON辅助格式化处理方法
2013/03/26 Javascript
基于jquery实现的定时显示与隐藏div广告的实现代码
2013/08/22 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
2015/03/06 Javascript
基于Css3和JQuery实现打字机效果
2015/08/11 Javascript
AngularJS 与百度地图的结合实例
2016/10/20 Javascript
JavaScript Ajax实现异步通信
2016/12/14 Javascript
JS使用正则实现去掉字符串左右空格的方法
2016/12/27 Javascript
Javascript中构造函数要注意的一些坑
2017/01/23 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
2017/09/18 NodeJs
除Console.log()外更多的Javascript调试命令
2018/01/24 Javascript
微信小程序上传文件到阿里OSS教程
2019/05/20 Javascript
autojs 蚂蚁森林能量自动拾取即给指定好友浇水的实现方法
2020/05/03 Javascript
Vue双向数据绑定(MVVM)的原理
2020/10/03 Javascript
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
一波神奇的Python语句、函数与方法的使用技巧总结
2015/12/08 Python
python中闭包Closure函数作为返回值的方法示例
2017/12/17 Python
简单实现python聊天程序
2018/04/01 Python
python dict 相同key 合并value的实例
2019/01/21 Python
使用Python的networkx绘制精美网络图教程
2019/11/21 Python
Python递归求出列表(包括列表中的子列表)的最大值实例
2020/02/27 Python
Python开发.exe小工具的详细步骤
2021/01/27 Python
薇诺娜官方网上商城:专注敏感肌肤
2017/05/25 全球购物
竞职演讲稿范文
2014/01/11 职场文书
出国英文推荐信
2014/05/10 职场文书
财务检查整改报告
2014/11/06 职场文书
五一劳动节活动总结
2015/02/09 职场文书
杭州黄龙洞导游词
2015/02/10 职场文书
龙猫观后感
2015/06/09 职场文书