微信小程序踩坑之播放音频
- 这一周,给公司开发一个扫描条码的小程序,简易追踪样品的走向,那么问题来了,扫码成功,我要有个反应,领导嫌弃要点击的弹窗,一闪而过的弹窗,要语音播报,直接上代码
// pages/track/track.js
const innerAudioContext = wx.createInnerAudioContext(); //第一步,初始化
Page({
data: {
},
onLoad: function (options) {
},
scan() {
wx.scanCode({
onlyFromCamera: false,
scanType: ['barCode'],
success: (res) => {
if (res.scanType != "CODE_39") {
this.audioFail() //第四步调用
} else {
this.audioSuccess()
}
},
fail: () => { },
complete: () => {}
});
},
//语音提示部分(目前只有模拟器有声音,真机测试偶尔有声音)
audioSuccess() {
innerAudioContext.src = '/static/audio/success.mp3' //第二步设置音频地址
innerAudioContext.autoplay = true
innerAudioContext.play() //第三步,播放
},
audioFail() {
innerAudioContext.src = '/static/audio/fail.mp3'
innerAudioContext.autoplay = true
innerAudioContext.play()
}
})
这里有个有这么一句res.scanType != "CODE_39"
,是因为扫码这个功能不太灵敏,会扫部分条码,出现不正确的结果,我发现,公司的样品条码全是CODE_39类型的,这里干脆就只让这个类型的能扫描成功,其他都是失败。