这篇文章主要介绍“摇一摇小程序系统如何开发”,在日常操作中,相信很多人在摇一摇小程序系统如何开发问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”摇一摇小程序系统如何开发”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
//首先定义一下,全局变量
var lastTime = 0;//此变量用来记录上次摇动的时间
var x=0,
y = 0,
z=0,
lastX =0,
lastY = 0,
lastZ = 0;//此组变量分别记录对应x、y、z三轴的数值和上次的数值
var shakeSpeed = 110;//设置阈值
//编写摇一摇方法
function shake(acceleration) {
var nowTime = new Date().getTime();//记录当前时间
//如果这次摇的时间距离上次摇的时间有一定间隔 才执行
if (nowTime - lastTime > 100) {
var diffTime = nowTime - lastTime;//记录时间段
lastTime = nowTime;//记录本次摇动时间,为下次计算摇动时间做准备
x = acceleration.x;//获取x轴数值,x轴为垂直于北轴,向东为正
y = acceleration.y;//获取y轴数值,y轴向正北为正
z = acceleration.z;//获取z轴数值,z轴垂直于地面,向上为正
//计算 公式的意思是 单位时间内运动的路程,即为我们想要的速度
var speed = Math.abs(x + y + z - lastX - lastY - lastZ) / diffTime * 10000;
//console.log(speed)
if (speed > shakeSpeed) {//如果计算出来的速度超过了阈值,那么就算作用户成功摇一摇
wx.stopAccelerometer()
self.setData({
hasInit: false,
canvas:{}
})
audioCtx.setSrc('http://123.207.0.183/application/images/s.mp3')
audioCtx.play()
wx.showLoading({
title: '寻找大神中...'
})
config.request({
// 要请求的地址
url: config.service.taRan,
success(e) {
setTimeout(function(){
//console.log(e.data)
audioCtx.setSrc('http://123.207.0.183/application/images/r.mp3')
audioCtx.play()
self.uid = e.data
self.con = ''
self.onInitShow()
},2000)
}
})
}
lastX = x;//赋值,为下一次计算做准备
lastY = y;//赋值,为下一次计算做准备
lastZ = z;//赋值,为下一次计算做准备
}
}
wx.onAccelerometerChange(shake)
//wx.startAccelerometer()
var audioCtx = wx.createAudioContext('myAudio')
提醒:audio API的src不能用本地地址。
到此,关于“摇一摇小程序系统如何开发”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!