虽然我只是为响应点击而播放音频,但我会在脚本加载时初始化AudioContext和缓冲区。
在移动Chrome 57.0.2987.132中,控制台在从iframe加载时会显示以下警告:
必须创建或恢复跨源iframe中的AudioContext 从用户手势启用音频输出。
要使音频工作,我会在第一次点击时重新创建AudioContext。有没有办法在第一次点击时简单地激活现有的AudioContext?我还可以检测音频当前是否被阻止?
参考文献:
答案 0 :(得分:3)
AudioContext.state会告诉您它是“正在运行”还是“暂停”。如果它被“暂停”,则从用户手势中调用AudioContext.resume(),它应该为你启动它(无需重新创建状态)。