我已经尝试在kitkat和棒棒糖中运行cordova媒体插件,但它没有显示任何响应。 甚至没有错误函数的第3个参数正在运行。 我也几乎阅读了关于这个问题的每一篇文章或问题,并尽我所能地尝试但没有任何效果。 我最后得出的结论是,在4.1以上的Android版本中,这个插件并不完全支持。
我试过了:
<script>
document.body.onload="ready()";
function ready()
{
document.addEventListener("deviceready",function() {
var src;
// src's value
var med=new Media(src,
function() {
alert("success");
},
function(e)
{
alert("failed code: "+e);
});
med.play();
med.release();},false);
}
</script>
这是我尝试用 // src的值替换
src = 'cdvfile://audio.mp3';
src = 'file:///android_asset/www/audio.mp3';
src = "cdvfile:///android_asset/www/audio.mp3";
src = "audio.mp3";
即使在我写完那个愚蠢的结论之后,我仍然怀疑它是如何在具有相同操作系统的某些设备上运行的。那么,任何制作音频文件的想法都可以在cordova app中播放?
更多信息: 1&gt;我的项目结构
appName
|___www
|___[+]css
|___[+]js
|___index.html
|___[+]img
|___audio.mp3
2&gt;我的目标是6.3.0 marshmallow
答案 0 :(得分:0)
媒体绝对适合我的棉花糖 - 尽管我使用的是wav文件而不是mp3。我用
audioFail = loadAudio('sounds/no.wav'); where the file is stored in www/sounds
媒体构造函数是异步的,但您的代码在发出对构造函数的调用后立即使用med - 您是否确认med存在且在您尝试调用med.play()
之前已定义?