iOS Web 应用上的 HTML5 音频

Posted

技术标签:

【中文标题】iOS Web 应用上的 HTML5 音频【英文标题】:HTML5 audio on iOS web app 【发布时间】:2013-02-17 09:18:17 【问题描述】:

我正在尝试在 iPad 网络应用上播放声音。使用 jquery mobile 和 ios 6.1。我知道 iOS 上的自动播放限制,因此我通过点击(功能)开始播放音频。它在 iPad 上的 Safari 浏览器中运行良好。但是当我全屏访问与网络应用程序相同的页面(添加到主屏幕)时,它不会播放。我会认为它只是全屏显示的完全相同的 Safari。显然不是这样,网络应用似乎有额外的限制。

为什么 html5 音频会在 iPad Safari 浏览器中播放,但不能通过 iPad 网络应用程序播放?在浏览器与网络应用程序中我需要注意更多限制吗?

我使用的示例代码:

html: <audio id="audio" src="/audio/test.mp3"></audio>
script:
$(document).on("pageinit", function () 
        var audio = document.getElementById('audio');
        $("#playGame").on("click", function (event, ui) 

            audio.play();
        );
    );

【问题讨论】:

唯一想到的是相对链接。我会尝试(1)使音频src绝对,或(2)cache the file using the browser localStorage。 @WillemLabu 更改为绝对引用并没有成功。听起来我可能需要研究音频编码 [链接] (***.com/questions/1612116/…)。我会检查一下。 祝你好运。 :D 【参考方案1】:

我也在为同样的事情苦苦挣扎。在 Safari 和 Chrome 上:播放音频没问题。停止、暂停、播放,一切正常。

但在网络应用程序中也是如此:没有音频。

原来是一件简单的事情。我删除了这一行:

<meta name="apple-mobile-web-app-capable" content="yes">

我正在播放音频!它不再是一个真正的网络应用程序;显示 URL 框和 Safari 控件....但我需要音频才能工作(网络播放器)所以这对我来说已经足够了...

【讨论】:

以上是关于iOS Web 应用上的 HTML5 音频的主要内容,如果未能解决你的问题,请参考以下文章

H5 音频

移动设备上的 HTML5 base64 编码音频

UIWebView:当应用程序进入后台时,iOS 6 中的 HTML5 音频暂停

在 html5 应用上录制音频

在 iOS 中连续播放 HTML5 音频/视频?

如何在后台为ios音频文件运行Phonegap应用程序