我想插入背景音频在我的第一页上的phonegap应用程序。目前我正在测试这在Android 2.2(在实际的手机上),但最终的应用程序也是为iOS设计的android phonegap音频奇怪的问题
我已经使用了各种方法,唯一有一些成功的是通过javascript。我有一个非常奇怪的行为(至少对我来说)。音频播放只有如果我点击按钮,而不是页面加载,即使(按钮和就绪功能)调用相同的功能(playAudio)和页面加载时,我得到警报,这意味着playAudio功能已成功呼叫。
1)我做错了什么?我该如何解决这个问题?有任何想法吗?
2)为什么<嵌入>不适用于Android(它工作得很好,因为它应该在桌面浏览器btw)。 (我用2嵌入测试目的不同的路径,没有在Android上工作)这应该是最简单的方式做背景音频..
我的意图是当然要摆脱按钮,并有音乐在页面加载时自动播放。
谢谢
这里是我的代码:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script src="js/jquery.js"></script>
<script type="text/javascript" src="phonegap.js"></script>
<script>
$(document).ready(function(){
alert('ready');
playAudio('intro.mp3')
});
function playAudio(src) {
alert('func::playAudio(src)');
if (device.platform == 'Android') {
src = '/android_asset/www/' + src;
}
var media = new Media(src, success, error_error);
media.play();
}
function success() {
// ignore
}
function error_error(e) {
alert('great error');
alert(e.message);
}
</script>
</head>
<body>
<div class="container-fluid">
<button id="button" onclick="playAudio('intro.mp3')"></button>
<embed name="introAudio" src="intro.mp3" loop="false" hidden="true" autostart="true">
<embed name="introAudio2" src="/android_asset/www/intro.mp3" loop="false" hidden="true" autostart="true">
</div>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
app.initialize();
</script>
</body>
</html>
由'它不工作'我的意思是我没有听到任何声音,直到我按下按钮,但我希望它自动启动。 我改变了成功功能并删除了警报。我也注意到你使用'onDeviceReady()'而不是$(document).ready(function()'。我也测试过使用onLoad(来自[link](http://stackoverflow.com/questions/10893322/) )在手机上面的工作仍然没有,这意味着没有声音开始加载。 – user1198170
你在用什么手机? – MBillau
华为Ideos X5运行Android 2.2.1 – user1198170