微信开发的过程中,我们发现有很多的权限我们个人的订阅号是没有的,所以呢,我们采用测试号来进行开发。测试号有它自己的ID和密码,有自己的URL绑定地址以及绑定域名的地方,注意绑定域名不要加http://,只包括自己的域名,例如 xx.duapp.com 其余什么都不要。
下面是JSSDK中对于php语言的sample.phpde 的改写内容,注意,需要修改的只有APPID 和APPSECRET(从测试号赋值过来即可)。另外一点注意,如果你的accesstoken是调用一次API就获取一次的话,那么尽量只自己测试,权限次数虽然写着2000,但是实际只有100次左右,不要让太多的人频繁的点击测试。
测试录音接口需要将音频的id传递给playvoice,需要设置一个变量,进行传递~~~
<?php
require_once "jssdk.php";
$jssdk = new JSSDK("你的appid", "你的APPsecret");
$signPackage = $jssdk->GetSignPackage();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initital-scale=1">
<title>腾讯API</title>
</head>
<body>
<button id="btn">点击显示总部</button>
<button id="ve1">开始录音</button>
<button id="ve2">停止录音</button>
<button id="ve3">播放录音</button>
</body>
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script>
/*
* 注意:
* 1. 所有的JS接口只能在公众号绑定的域名下调用,公众号开发者需要先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
* 2. 如果发现在 Android 不能分享自定义内容,请到官网下载最新的包覆盖安装,Android 自定义分享接口需升级至 6.0.2.58 版本及以上。
* 3. 常见问题及完整 JS-SDK 文档地址:http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html
*
* 开发中遇到问题详见文档“附录5-常见错误及解决办法”解决,如仍未能解决可通过以下渠道反馈:
* 邮箱地址:weixin-open@qq.com
* 邮件主题:【微信JS-SDK反馈】具体问题
* 邮件内容说明:用简明的语言描述问题所在,并交代清楚遇到该问题的场景,可附上截屏图片,微信团队会尽快处理你的反馈。
*/
wx.config({
debug: true,
appId: '<?php echo $signPackage["appId"];?>',
timestamp: <?php echo $signPackage["timestamp"];?>,
nonceStr: '<?php echo $signPackage["nonceStr"];?>',
signature: '<?php echo $signPackage["signature"];?>',
jsApiList: [
// 所有要调用的 API 都要加到这个列表中
"onMenuShareAppMessage",
"openLocation",
"startRecord",
"stopRecord",
"playVoice"
]
});
wx.ready(function () {
// 在这里调用 API
wx.onMenuShareAppMessage({
title: '分享标题', // 分享标题
desc: '分享描述', // 分享描述
link: 'http://www.baidu.com', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: 'http://1995zp.duapp.com/demo.jpg', // 分享图标
type: 'link', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: function () {
// 用户确认分享后执行的回调函数
alert("ok");
},
cancel: function () {
// 用户取消分享后执行的回调函数
alert("false");
}
});
document.getElementById("btn").onclick = function(){
wx.openLocation({
latitude: 65.4, // 纬度,浮点数,范围为90 ~ -90
longitude: 70.7, // 经度,浮点数,范围为180 ~ -180。
name: '北京', // 位置名
address: '北京昌平区金利全D区', // 地址详情说明
scale: 20, // 地图缩放级别,整形值,范围从1~28。默认为最大
infoUrl: 'http://wwww.baidu.com/' // 在查看位置界面底部显示的超链接,可点击跳转
});
}
var ve1 = document.getElementById("ve1");
var ve2 = document.getElementById("ve2");
var ve3 = document.getElementById("ve3");
ve1.onclick = function () {
wx.startRecord();
}
var vv = null;
ve2.onclick = function () {
wx.stopRecord({
success: function (res) {
var localId = res.localId;
vv = localId;
}
});
}
ve3.onclick = function () {
wx.playVoice({
localId: vv // 需要播放的音频的本地ID,由stopRecord接口获得
});
}
});
</script>
</html>