微信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 相关文章推荐
js focus不起作用的解决方法(主要是因为dom元素是否加载完成)
Nov 05 Javascript
javascript实现原生ajax的几种方法介绍
Sep 21 Javascript
jQuery打印指定区域Html页面并自动分页
Jul 04 Javascript
JS长整型精度问题实例分析
Jan 13 Javascript
Node.js环境下编写爬虫爬取维基百科内容的实例分享
Jun 12 Javascript
AngularJS 控制器 controller的详解
Oct 17 Javascript
clipboard.js在移动端复制失败的解决方法
Jun 13 Javascript
Vue2.0学习系列之项目上线的方法步骤(图文)
Sep 25 Javascript
从零开始实现Vue简单的Toast插件
Dec 03 Javascript
微信小程序前端自定义分享的实现方法
Jun 13 Javascript
vue.config.js常用配置详解
Nov 14 Javascript
Vue this.$router.push(参数)实现页面跳转操作
Sep 09 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
phpmyadmin 3.4 空密码登录的实现方法
2010/05/29 PHP
七款最流行的PHP本地服务器分享
2013/02/19 PHP
Codeigniter实现多文件上传并创建多个缩略图
2014/06/12 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
javascript面向对象编程(一) 实例代码
2010/06/25 Javascript
jquery必须知道的一些常用特效方法及使用示例(整理)
2013/06/24 Javascript
浅谈JavaScript之事件绑定
2013/07/08 Javascript
jQuery实现长按按钮触发事件的方法
2015/02/02 Javascript
javascript数组去重的方法汇总
2015/04/14 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
jQuery替换textarea中换行的方法
2015/06/10 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
微信小程序 WebSocket详解及应用
2017/01/21 Javascript
jQuery实现鼠标跟随效果
2017/02/20 Javascript
详解Layer弹出层样式
2017/08/21 Javascript
JS实现数组去重,显示重复元素及个数的方法示例
2019/01/21 Javascript
js实现无缝轮播图特效
2020/05/09 Javascript
[01:59]翻天覆地,因你而变,7.20版本地图更新速览
2018/11/24 DOTA
python3.4用函数操作mysql5.7数据库
2017/06/23 Python
python 寻找list中最大元素对应的索引方法
2018/06/28 Python
使用Python实现企业微信的自动打卡功能
2019/04/30 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
2019/08/06 Python
Python求解排列中的逆序数个数实例
2020/05/03 Python
Python新手学习函数默认参数设置
2020/06/03 Python
pycharm激活方法到2099年(激活流程)
2020/09/22 Python
python statsmodel的使用
2020/12/21 Python
canvas三角函数模拟水波效果的示例代码
2018/07/03 HTML / CSS
司法局群众路线教育实践活动整改措施
2014/09/17 职场文书
债务追讨授权委托书范本
2014/10/16 职场文书
2014年为民办实事工作总结
2014/12/20 职场文书
教师节感谢信
2015/01/22 职场文书
婚礼上证婚人致辞
2015/07/28 职场文书
基于Go Int转string几种方式性能测试
2021/04/28 Golang
JS实现扫雷项目总结
2021/05/19 Javascript
python实现双向链表原理
2022/05/25 Python