4

音频标签是否适用于 android 本机应用程序?
我已经搜索了一段时间,但是我找不到一个帖子来告诉我它是否受支持,或者我必须做什么才能使其工作。

<audio id="Multimedia1" controls="controls" width="100%" height="30px">
<source src="file:///android_asset/www/Resources/audio.mp3">
Your browser does not support audio.
</audio>

它不加载音频。我尝试了不同的路径,例如:

Resources/audio.mp3  
www/Resources/audio.mp3  
file:///android_asset/www/Resources/audio.mp3

如果我使用浏览器(没有本机应用程序)浏览 index.html,则音频可以通过相对路径正常播放。

但我无法让它与 apache cordova 应用程序一起工作。

有任何想法吗?提前致谢!

4

2 回答 2

4

audio我对Cordova 2.3.0 中 HTML5 的标签有同样的问题。我最终做的只是使用 JavaScript 播放它们:

这是我放在js文件夹中的audio.js

function playAudio(src) {
    src = '/android_asset/www/' + src;
    var media = new Media(src, success, errorThrown);
    media.play();
}

function success() {}
function errorThrown(e) {
    alert('Error while playing the sound!');
}

然后在您的 HTML 代码中执行以下操作:

<script src="js/audio.js"></script>

要播放声音,请将其添加到一个<script>块中:

playAudio("media/your_sound.wav");
于 2013-07-16T22:46:47.813 回答
2

同样的问题:我发现问题是为了能够在 HTML5 音频中使用 .play() 函数,它必须在用户界面事件处理程序(例如点击)中运行,如下所述:

https://code.google.com/p/chromium/issues/detail?id=178297

这是移动浏览器中的常见策略,旨在避免那些会自动播放内容并烧毁数据的网站。可以使用这个https://gist.github.com/blairvanderhoof/9380545来设置应用程序使用的 webview 来解决这个问题。我正在制作一个插件,安装后会改变这种行为。

-麦克风

于 2014-07-27T19:20:39.663 回答