繁体   English   中英

在 android 上播放音频但在 iphone 上不播放音频

[英]Play audio on android but not on iphone

我在 vue3 中构建了应用程序。 每当扫描二维码时,它都会触发播放声音的功能。 这在 android 和 web 上工作正常,但在 ios 上使用浏览器时却不行。 我不知道出了什么问题。 谁有线索?

  <qrcode-stream
    :camera="camera"
    @decode="onDecode"
    :torch="torch"
    :track="drawoutline"
  >
  </qrcode-stream>

触发函数:

async function onDecode(data) {
  new Audio(require("../assets/audio.mp3")).play();
}

如果我用一个按钮触发它,它会播放音频,但不会在检测到二维码时即时播放:

<q-btn
  label="play sound"
  @click="onDecode('Audio')"
></q-btn>

这非常简单。 它在 android 和网络上运行良好,但是在 ios 上的网络上运行它时,除非您按下按钮,否则它不会播放任何音频。 为什么?

没有用户通过交互启动它,你不能在 iOS 上自动播放音频。 这是iOS 施加的限制

在用户启动播放之前,JavaScript play() 和 load() 方法也处于非活动状态,除非 play() 或 load() 方法由用户操作触发。 换句话说,用户启动的播放按钮有效,但 onLoad="play()" 事件无效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM