微信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 相关文章推荐
javascript iframe中打开文件,并检测iframe存在否
Dec 28 Javascript
javascript对象之内置对象Math使用方法
Apr 16 Javascript
IE和Firefox的Javascript兼容性总结[推荐收藏]
Oct 19 Javascript
javascript中parseInt()函数的定义和用法分析
Dec 20 Javascript
学习JavaScript鼠标响应事件
Dec 25 Javascript
详解js的事件代理(委托)
Dec 22 Javascript
JS设置CSS样式的方式汇总
Jan 21 Javascript
layui.js实现的表单验证功能示例
Nov 15 Javascript
VUE项目中加载已保存的笔记实例方法
Sep 14 Javascript
element form 校验数组每一项实例代码
Oct 10 Javascript
VUE中使用HTTP库Axios方法详解
Feb 05 Javascript
Vue.extend 登录注册模态框的实现
Dec 29 Vue.js
详解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
Apache2 httpd.conf 中文版
2006/11/17 PHP
PHP 的 __FILE__ 常量
2007/01/15 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
代码生成器 document.write()
2007/04/15 Javascript
jquery无缝向上滚动实现代码
2013/03/29 Javascript
JS隐藏参数post传值实例
2013/04/18 Javascript
如何判断鼠标是否在DIV的区域内
2013/11/13 Javascript
js实现随屏幕滚动的带缓冲效果的右下角广告代码
2015/09/04 Javascript
JS实现带鼠标效果的头像及文章列表代码
2015/09/27 Javascript
jQuery插件datatables使用教程
2016/04/21 Javascript
一个简单的JavaScript Map实例(分享)
2016/08/03 Javascript
jQuery使用siblings获取某元素所有同辈(兄弟姐妹)元素用法示例
2017/01/30 Javascript
使用jquery给新生的th绑定hover事件的实例
2017/02/10 Javascript
Bootstrap Tree View简单而优雅的树结构组件实例解析
2017/06/15 Javascript
ES6 迭代器(Iterator)和 for.of循环使用方法学习(总结)
2018/02/08 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
js实现圆形菜单选择器
2020/12/03 Javascript
[01:35]2014DOTA2西雅图邀请赛 专访狐狸妈青春献给刀塔
2014/07/08 DOTA
[52:26]完美世界DOTA2联赛决赛 FTD vs Phoenix 第一场 11.08
2020/11/11 DOTA
Ubuntu下安装PyV8
2016/03/13 Python
用生成器来改写直接返回列表的函数方法
2017/05/25 Python
python实现rsa加密实例详解
2017/07/19 Python
matplotlib设置legend图例代码示例
2017/12/19 Python
深入了解Python中pop和remove的使用方法
2018/01/09 Python
简单了解python单例模式的几种写法
2019/07/01 Python
Flask使用Pyecharts在单个页面展示多个图表的方法
2019/08/05 Python
python json.dumps中文乱码问题解决
2020/04/01 Python
收藏!10个免费高清视频素材网站!【设计、视频剪辑必备】
2021/03/18 杂记
爱尔兰领先的在线体育用品零售商:theGAAstore
2018/04/16 全球购物
平面设计的岗位职责
2013/11/08 职场文书
应届毕业生个人求职自荐信
2014/01/06 职场文书
工程项目建议书范文
2014/03/12 职场文书
公司门卫岗位职责
2014/03/15 职场文书
就业协议书的作用
2014/04/11 职场文书
读书月活动方案
2014/05/22 职场文书