2013-02-20 2 views
5

휴대 전화에서 HTML5 오디오 태그를 사용하여 오디오를 재생하려고합니다. 사운드를로드했지만 .play() 명령을 실행해도 아무 것도 발생하지 않습니다. 기본 컨트롤을 표시하여 해당 재생 단추를 눌러 테스트하고 그 중 하나가 작동하고 사운드가 재생되는지 확인합니다. 나는 또한 주소 표시 줄에서 자바 스크립트를 실행하여 소리를 재생하려고 했는데도 작동합니다.안드로이드가 간격에서 html5 오디오를 재생하지 않습니다.

I 재생 사용하고 코드는이 같은 같습니다

setInterval(function(){ 
    if(blahblah){ 
     document.getElementById("player").play(); 
     alert("Played!"); 
    } 
},500); 
:

setInterval(function(){ 
    if(blahblah){ 
     document.getElementById("player").play(); 
    } 
},500); 

는 심지어 소리를 재생하려고 있는지 확인하기를,이 같은, 그 후 경고를 넣어

경고를 보았지만 아무 소리도 들리지 않았습니다. 어떤 도움

감사합니다 :)

+0

아무 잘못 알지도 못했습니까? – JerwuQu

+0

나는 모든 것을 시도했지만 비슷한 문제가 있습니다. Howler.js, Soundmanager2 등 아무것도 작동하지 않습니다. :( – Jared

답변

1

대부분의 모바일 디바이스는 사용자 상호 작용의 결과 인 경우 오디오를 재생 만 허용됩니다. 재생 코드를 버튼 클릭 이벤트에 넣으면 코드에서 다른 버그가 없다고 가정하면 작동하지만 사용자의 허가가 없다고 생각하여 기기가 setInterval에서 오디오 재생을 방해합니다 그것을 재생합니다.

내가 지금하고있는 일이며 이는 일시적인 해결 방법이라는 것을 인정합니다. 내 단추 이벤트 내에서 오디오를 재생하고 즉시 중지 한 다음 setInterval으로 전화하십시오. 나중에 작동하더라도 사용자가 해당 오디오를 재생할 수있는 권한이 기기에 부여되어 있다고 생각하기 때문에 지금은 작동합니다. 내 버튼 클릭 이벤트 내부의 코드 는 다음과 같습니다

document.getElementById("player").play(); 
document.getElementById("player").pause(); 

setInterval(function(){ 
    document.getElementById("player").play(); 
}, 500); 

모바일에, 그것은 거의 원활 그것은 당신의 컴퓨터에서와 마찬가지로 재생되지 않을 수 있습니다 유의하십시오. 가능하면 대체 접근법을 찾는다.

관련 문제