HTML5 音频未在 Android 4.0.4 设备本机浏览器中多次播放

Posted

技术标签:

【中文标题】HTML5 音频未在 Android 4.0.4 设备本机浏览器中多次播放【英文标题】:HTML5 audio not playing multiple times in Android 4.0.4 device Native Browser 【发布时间】:2012-11-22 21:28:56 【问题描述】:

我目前正在从事一个 HTML5 项目。

Android 原生浏览器的同一页面中多次播放同一音频文件存在问题。该问题在 Android ICS 4.0.4 版本上特别注意。在此版本中,音频将播放一次,但当再次启动时,音频将不会播放。同样的事情是在 Android ICS 4.0.3 版本和较新的 4.1.1 版本中完美运行。

经过测试的设备:Samsung Galaxy Tab (Android 4.0.4):第一次播放时才无法播放HTC One (Android 4.0.4) :第一次播放,然后不播放Sony Tab (Android 4.0.3):非常好,可以多次播放音频HTC Sensation ( Android 4.0.3):非常好,可以多次播放音频Samsung Nexus Phone (Android 4.1.1):非常好,可以多次播放音频

根据对 Internet 的一些研究,这似乎是 Android 4.0.4 版的问题

请帮助我找到一些解决方案,使其适用于所有设备。

Please use this W3 Schools html5 audio link for try outs

【问题讨论】:

我的项目中遇到了同样的问题。 我也遇到了类似的问题,希望社区能提供帮助。 @Shurane 我添加了 w3schools HTML5 音频试用链接。我希望检查我提到的问题会有所帮助。 @eric.itzhak 我尝试了链接。但它也无法重播。 @eric.itzhak 并且 ICS 中的当前 chrome 已停止支持 Flash。 【参考方案1】:

我有一个可行的解决方案..

问题是在 android 4.0.4 浏览器中,当音频播放一次(结束)后,搜索时间不会重置到开始位置,它会一直停留在结束位置。 因此,通过在音频 ended 之后设置 currentTime = 0 会将其重置为起始位置,这样我们就可以在没有任何页面的情况下多次播放相同的音频刷新。 经过测试,在所有设备上都能完美运行。

HTML 代码:

<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;  

【讨论】:

【参考方案2】:

这对我有用:

var movie_audio = document.getElementById('movie_audio');  
movie_audio.addEventListener('ended', function()  
   movie_audio.load(); 
);

【讨论】:

【参考方案3】:

如果上述解决方案不适合您,请尝试此解决方案。

audio_element.addEventListener('timeupdate', function() 
 if (audio_element.currentTime >= ( audio_element.duration - 0.3 ) ) 
  audio_element.currentTime = 0;
  audio_element.pause();
 
, false);  

注意:我们将搜索栏设置在音频结束之前的起始位置。

【讨论】:

以上是关于HTML5 音频未在 Android 4.0.4 设备本机浏览器中多次播放的主要内容,如果未能解决你的问题,请参考以下文章

HTML5 音频文件未在 IE11 中显示

HTML5 音频播放器未在 ios Safari 中自动播放

HTML5 音频未在本地主机的 React 应用程序中播放

HTML5 视频未在 android webview 中播放

Android 模拟器未在 webview 中显示 html5 画布

Phonegap 构建,HTML5 音频,Android