Я пытаюсь добавить звук щелчка к своему приложению ionic5, используя HTMLAudioElement
. Он загружается динамически, но в DOM он выглядит следующим образом:
<audio preload="auto" id="audio-player" controls="" src="assets/audio/448080__breviceps__wet-click.wav"></audio>
Он отлично работает в Chrome в любой среде, а также работает в Safari, когда размещается на localhost:8100
с ioni c dev сервер (см .: https://ionicframework.com/docs/cli/commands/serve)
Но когда я пытаюсь воспроизвести звук в Safari с хостинга Firebase https://fishbowl-the-game.firebaseapp.com
, происходит сбой со следующей ошибкой:
this.audioPlayer.play().catch(
(err)=>{
console.warn("audioPlayer, err=",err)
});
// error message from Safari
[Warning] audioPlayer, err= – NotSupportedError: The operation is not supported. (common-es2015.js, line 1548)
Not SupportedError: The operation is not supported.
И когда я go загружаю файл .wav
напрямую, он работает на Chrome, И Safari на localhost
, но НЕ на Safari от firebaseapp.com
, см .: https://fishbowl-the-game.firebaseapp.com/assets/audio/448080__breviceps__wet-click.wav
// error message from Safari when loading the resource directly
[Error] Failed to load resource: Plug-in handled load (448080__breviceps__wet-click.wav, line 0)
Я знаю, что есть другие сообщения о HTML5 проблемах со звуком в Safari, но мой код работает поверх localhost
, поэтому я предполагаю, что это может быть что-то остальное.
есть идеи?