我正在开展HTML5项目。
在Android本机浏览器中的同一页中多次播放相同的音频文件有问题。 Android ICS 4.0.4版本中特别注意到了这个问题。在此版本中,音频将播放一次,但是如果再次启动,音频将不会播放。同样的事情在Android ICS 4.0.3版本和较新的4.1.1版本中运行正常。
测试设备:
三星Galaxy Tab(Android 4.0.4):只播放第一次,它不会播放
HTC One(Android 4.0.4):仅播放第一次,不播放
Sony Tab(Android 4.0.3):完美的播放音乐多次
HTC Sensation(Android 4.0.3):完美的播放音乐多次
三星Nexus手机(Android 4.1.1):完美的播放音乐多次
基于对互联网的一些研究,似乎是Android 4.0.4版的问题
请帮我找到一些解决方案,使其在所有设备上工作。
解决方法
我有一个工作的解决方案
问题出在Android 4.0.4浏览器当音频播放一次(结束)时,搜索时间将不会被重置为起始位置,它将保持在最后。
所以通过在音频结束后设置currentTime = 0,将其重置为起始位置,这样我们可以播放与我们想要的任何页面刷新一样多的音频。
测试在所有设备中完美工作。
<audio id="movie_audio"> <source src="my_audio_location/movie_audio.mp3" type='audio/mpeg; codecs="mp3"' /> <source src="my_audio_location/movie_audio.ogg" type='audio/ogg; codecs="vorbis"' /> </audio>
JavaScript代码:
var movie_audio = document.getElementById('movie_audio'); movie_audio.addEventListener('ended',function(){ movie_audio.currentTime = 0; }