问题描述
移动端 iOS系统audio播放会延迟
问题出现的环境背景及自己尝试过哪些方法
项目中的点击事件添加音效,PC和安卓音效播放都很正常,iOS会有延迟1/2秒,很影响用户体验
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
import audio from './assets/clickAudio.mp3';
Vue.prototype.clickButton = () => {
var audioContainer = document.getElementById('buttonAudio');
var audioDom = document.createElement('audio');
var sourceDom = document.createElement('source');
sourceDom.type = 'audio/mpeg';
sourceDom.src = audio;
audioDom.preload = 'auto';
audioDom.playbackRate = 5;
audioDom.appendChild(sourceDom);
audioContainer.appendChild(audioDom);
audioDom.load();
// 开始播放
audioDom.oncanplay = (e) => {
var _audioDom = e.target;
// this.totalTime = _audioDom.duration;
_audioDom.play();
};
};
你期待的结果是什么?实际看到的错误信息又是什么?
希望iOS上播放也没有延迟
ios对音频的兼容性不是很好,播放音乐有延迟一般能接受,但是如果做一些游戏类,用户交互比较多的音频音效的话即时性相对于安卓机比较的话不是很好,我也经历过这个问题,手机连点一直触发音效,ios的延迟一般在2s左右,后来我使用了howler.js解决了这个问题,可以试一下
https://www.npmjs.com/package...