iOS 11 webkitAudioContext перегружен?

1

В браузере Safari iOS11 (iOS10 и ниже работает), если я уйду и вернусь, иногда звуковой файл не воспроизводится. Если я продолжаю убираться и возвращаться, он в конечном итоге играет - но он продает все игровые звонки и пытается сыграть все в одном.

Я создал очень простую страницу тестирования. Кто-нибудь знает, почему?

<!DOCTYPE HTML>
<html>
<head>
<meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,minimum-scale=1,maximum-scale=1"/> 
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no" />
<style>
  button { font-size:2em; }
</style>
<script>
  var g_context, g_buffer;
  function play() {
    if (g_buffer) {
      var source = g_context.createBufferSource();
      source.buffer = g_buffer;
      source.connect(g_context.destination);
      source.start(0);
    }
  }

  function ready(){
    g_context = new webkitAudioContext();

    var req = new XMLHttpRequest();
    req.open("GET", "<*** insert your sound file path here ***>", true);
    req.responseType = "arraybuffer";
    req.onload = function(){
        g_context.decodeAudioData(req.response,function(buffer){
            g_buffer = buffer;
        }, function(e){});
    };
    req.onerror = function(e){
        console.log("fail to load", e);
    };
    try{req.send()}
    catch(e){}
  }
</script>

</head>  
<body onload="ready()">
  <button onclick="play()">play</button>
</body>
</html>
Теги:
audio
ios11
audiocontext

1 ответ

-2

начиная с iOS11, мне тоже не удается в нее играть!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню