1.基础接口
判断当前客户端版本是否支持指定JS接口,使用方法如下。
wx.checkJsApi({
jsApiList: ['chooseImage'], // 需要检测的JS接口列表
success: function(res) {
// 以键值对的形式返回,可用的API值为true,不可用为false
// 如{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
}
});
2.分享接口
获取“分享到朋友圈”按钮点击状态及自定义分享内容接口的使用方法如下。
wx.onMenuShareTimeline({
title: '', // 分享标题
link: '', // 分享链接
imgUrl: '', // 分享图标
success: function {
// 用户确认分享后执行的回调函数
},
cancel: function {
// 用户取消分享后执行的回调函数
}
});
获取“分享给朋友”按钮点击状态及自定义分享内容接口的使用方法如下。
wx.onMenuShareAppMessage({
title: '', // 分享标题
desc: '', // 分享描述
link: '', // 分享链接
imgUrl: '', // 分享图标
type: '', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: function {
// 用户确认分享后执行的回调函数
},
cancel: function {
// 用户取消分享后执行的回调函数
}
});
获取“分享到QQ”按钮点击状态及自定义分享内容接口的使用方法如下。
wx.onMenuShareQQ({
title: '', // 分享标题
desc: '', // 分享描述
link: '', // 分享链接
imgUrl: '', // 分享图标
success: function {
// 用户确认分享后执行的回调函数
},
cancel: function {
// 用户取消分享后执行的回调函数
}
});
获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口的使用方法如下。
wx.onMenuShareWeibo({
title: '', // 分享标题
desc: '', // 分享描述
link: '', // 分享链接
imgUrl: '', // 分享图标
success: function {
// 用户确认分享后执行的回调函数
},
cancel: function {
// 用户取消分享后执行的回调函数
}
});
获取“分享到QQ空间”按钮点击状态及自定义分享内容接口的使用方法如下。
wx.onMenuShareQZone({
title: '', // 分享标题
desc: '', // 分享描述
link: '', // 分享链接
imgUrl: '', // 分享图标
success: function {
// 用户确认分享后执行的回调函数
},
cancel: function {
// 用户取消分享后执行的回调函数
}
});
3.图像接口
拍照或从手机相册中选图接口的使用方法如下。
wx.chooseImage({
count: 1, // 默认为9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认两者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认两者都有
success: function (res) {
var localIds = res.localIds; // 返回选定照片的本地ID列表,localIds可以作
// 为img标签的src属性显示图片
}
});
预览图片接口的使用方法如下。
wx.previewImage({
current: '', // 当前显示图片的HTTP链接
urls: // 需要预览的图片HTTP链接列表
});
上传图片接口的使用方法如下。
wx.uploadImage({
localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
var serverId = res.serverId; // 返回图片的服务器端ID
}
});
下载图片接口的使用方法如下。
wx.downloadImage({
serverId: '', // 需要下载的图片的服务器端ID,由uploadImage接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
var localId = res.localId; // 返回图片下载后的本地ID
}
});
4.音频接口
开始录音接口的使用方法如下。
wx.startRecord;
停止录音接口的使用方法如下。
wx.stopRecord({
success: function (res) {
var localId = res.localId;
}
});
监听录音自动停止接口的使用方法如下。
wx.onVoiceRecordEnd({
// 录音时间超过一分钟没有停止的时候会执行 complete 回调
complete: function (res) {
var localId = res.localId;
}
});
播放音频接口的使用方法如下。
wx.playVoice({
localId: '' // 需要播放的音频的本地ID,由stopRecord接口获得
});
暂停播放音频接口的使用方法如下。
wx.pauseVoice({
localId: '' // 需要暂停播放的音频的本地ID,由stopRecord接口获得
});
停止播放音频的接口的使用方法如下。
wx.stopVoice({
localId: '' // 需要停止播放的音频的本地ID,由stopRecord接口获得
});
监听音频播放完毕接口的使用方法如下。
wx.onVoicePlayEnd({
success: function (res) {
var localId = res.localId; // 返回音频的本地ID
}
});
上传音频接口的使用方法如下。
wx.uploadVoice({
localId: '', // 需要上传的音频的本地ID,由stopRecord接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
var serverId = res.serverId; // 返回音频的服务器端ID
}
});
下载音频接口的使用方法如下。
wx.downloadVoice({
serverId: '', // 需要下载的音频的服务器端ID,由uploadVoice接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
var localId = res.localId; // 返回音频的本地ID
}
});
5.智能接口
识别音频并返回识别结果接口的使用方法如下。
wx.translateVoice({
localId: '', // 需要识别的音频的本地ID,由录音相关接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
alert(res.translateResult); // 音频识别的结果
}
});
6.设备信息
获取网络状态接口的使用方法如下。
wx.getNetworkType({
success: function (res) {
var networkType = res.networkType; // 返回网络类型:2G、3G、4G、WiFi
}
});
7.地理位置
使用微信内置地图查看位置接口的使用方法如下。
wx.openLocation({
latitude: 0, // 纬度,浮点数,范围为90 ~ -90
longitude: 0, // 经度,浮点数,范围为180 ~ -180
name: '', // 位置名
address: '', // 地址详情说明
scale: 1, // 地图缩放级别,整型值,范围为1~28,默认为最大
infoUrl: '' // 在查看位置界面底部显示的超链接,可点击跳转
});
获取地理位置接口的使用方法如下。
wx.getLocation({
type: 'wgs84', // 默认为wgs84的GPS坐标,如果要返回直接给openLo
// cation用的火星坐标,可传入'gcj02'
success: function (res) {
var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180
var speed = res.speed; // 速度,以米/每秒计
var accuracy = res.accuracy; // 位置精度
}
});
8.摇一摇周边
开启查找周边iBeacon设备接口的使用方法如下。
wx.startSearchBeacons({
ticket:"", // 摇周边的业务Ticket,系统自动添加在摇出来的页面链接后面
complete:function(argv){
// 开启查找完成后的回调函数
}
});
关闭查找周边iBeacon设备接口的使用方法如下。
wx.stopSearchBeacons({
complete:function(res){
// 关闭查找完成后的回调函数
}
});
监听周边iBeacon设备接口的使用方法如下。
wx.onSearchBeacons({
complete:function(argv){
// 回调函数,可以数组形式取得该商家注册的在周边的相关设备列表
}
});
9.界面操作
隐藏右上角菜单接口的使用方法如下。
wx.hideOptionMenu;
显示右上角菜单接口的使用方法如下。
wx.showOptionMenu;
关闭当前网页窗口接口的使用方法如下。
wx.closeWindow;
批量隐藏功能按钮接口的使用方法如下。
wx.hideMenuItems({
menuList: // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮
});
批量显示功能按钮接口的使用方法如下。
wx.showMenuItems({
menuList: // 要显示的菜单项
});
隐藏所有非基础按钮接口的使用方法如下。
wx.hideAllNonBaseMenuItem; // “基本类”按钮
显示所有功能按钮接口的使用方法如下。
wx.showAllNonBaseMenuItem;
10.微信扫一扫
调起微信扫一扫接口的使用方法如下。
wx.scanQRCode({
needResult: 0, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果
scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认两者都有
success: function (res) {
var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果
}
});
11.微信小店
跳转微信商品页接口的使用方法如下。
wx.openProductSpecificView({
productId: '', // 商品ID
viewType: '' // 0:默认值,普通商品详情页;1:扫一扫商品详情页;2:小店商品详情页
});
12.微信卡券
批量添加卡券接口的使用方法如下。
wx.addCard({
cardList: [{
cardId: '',
cardExt: ''
}], // 需要添加的卡券列表
success: function (res) {
var cardList = res.cardList; // 添加的卡券列表信息
}
});
查看微信卡包中的卡券接口的使用方法如下。
wx.openCard({
cardList: [{
cardId: '',
code: ''
}] // 需要打开的卡券列表
});
13.微信支付
发起一个微信支付请求的使用方法如下。
wx.chooseWXPay({
timestamp: 0, // 支付签名时间戳,注意微信JS-SDK中的所有timestamp字段均为小写。但最新版
// 的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
nonceStr: '', // 支付签名随机字符串,不长于32位
package: '', // 统一支付接口返回的prepay_id参数值,提交格式为prepay_id=***)
signType: '', // 签名方式,默认为'SHA1',使用新版支付需传入'MD5'
paySign: '', // 支付签名
success: function (res) {
// 支付成功后的回调函数
}
});