Al implementar la función de llamada de voz en tiempo real en mi sistema de servicio al cliente, si quiero reproducir transmisiones de audio y video automáticamente, encontré problemas en los dispositivos Apple.
Safari no permite que los sonidos se reproduzcan automáticamente en segundo plano de forma predeterminada. Esto es por razones de privacidad y experiencia del usuario, para evitar reproducir sonidos automáticamente sin que el usuario se dé cuenta.
La solucion es
Navegador Safari para iOS 11 y superior. Cuando el usuario ha tenido al menos una interacción, se pueden establecer las siguientes dos propiedades muted
y playsinline
la propiedad . Luego configure el js dinámico para reproducir el sonido automáticamente
<audio id="myAudio" src="audio.mp3" muted playsinline></audio>
Luego establece dinámicamente las propiedades en js
var myAudio = document.getElementById('myAudio');
myAudio.muted = false; // 将 muted 属性设置为 false
myAudio.autoplay = true; // 将 autoplay 属性设置为 true
myAudio.play(); // 播放音频
entonces
Después de que la página tenga al menos una interacción, puede hacer que el sonido se reproduzca automáticamente en el dispositivo Apple