gpt4 book ai didi

javascript - 移动 iOS 设备(移动 Chrome 和 Safari)上的 mp3 音频缓存问题

转载 作者:行者123 更新时间:2023-11-29 13:53:01 37 4
gpt4 key购买 nike

无法在移动 iOS(safari 和 chrome)上自动播放以前缓存的 mp3 音频

我正在 Angular 8 中开发一个应用程序,在该应用程序的一部分中,我试图在对象数组中缓存几个传入的音频 mp3,然后自动播放或根据用户操作播放。不幸的是,除了在移动 iOS 设备中,它在任何地方(在桌面和 Android 上)都可以工作。缓存的音频有时根本无法播放

基本上,对于从 API 接收到的几个对象的每个数组,我运行一个 for each 循环缓存此数组中的 mp3。

items.forEach(item => {
const audio = new Audio();
audio.src = urlString;
}

但是,如果我每次想在移动 iOS 设备上播放声音时禁用缓存并点击 API,一切都会正常运行。

知道如何解决这个问题吗?

启用移动 iOS 音频缓存

最佳答案

这可能是由于 iOS 的最新更新 (https://webkit.org/blog/7734/auto-play-policy-changes-for-macos/)

我有一个类似的问题,我每隔几次点击就会收到少量音频文件并按需缓存它们——尽管从技术上讲这似乎是由用户交互生成的(每次按下按钮都会生成要缓存的新文件数组)大部分时间都不会自动播放。

我针对 iOS 的解决方案是在按下第一个按钮(例如开始/登录按钮)时执行一个函数,该函数缓存可能在整个应用程序中使用的每个音频文件。

执行此操作后,我的自动播放工作正常,尽管它有点变通。

关于javascript - 移动 iOS 设备(移动 Chrome 和 Safari)上的 mp3 音频缓存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58560070/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com