angularjs - ReferenceError:在Ionic App中未定义媒体

标签 angularjs cordova audio ionic-framework

我正在用Ionic创建一个可在应用程序中播放音频的应用程序。我正在使用cordova-plugin-media播放音频。在android中,音乐无法播放,而在浏览器中,它会抛出ReferenceError:

ReferenceError: Media is not defined
at ChildScope.$scope.playAudio (observationCtrl.js:4)
at fn (eval at compile (ionic.bundle.js:26325), <anonymous>:4:218)
at ionic.bundle.js:62239
at ChildScope.$eval (ionic.bundle.js:29026)
at ChildScope.$apply (ionic.bundle.js:29125)
at HTMLAnchorElement.<anonymous> (ionic.bundle.js:62238)
at HTMLAnchorElement.eventHandler (ionic.bundle.js:16451)
at triggerMouseEvent (ionic.bundle.js:2906)
at tapClick (ionic.bundle.js:2895)
at HTMLDocument.tapTouchEnd (ionic.bundle.js:3022)

我的代码是否存在任何问题,或者ionic1不支持此插件。
我的音频播放代码:
$scope.playAudio = function(src) {
    var media = new Media(src, null, null, mediaStatusCallback);
    media.play();
};

最佳答案

似乎无法引用Media构造函数。您安装了插件吗?这个插件定义了一个全局的媒体构造器。

cordova plugin add cordova-plugin-media

然后this播放音频的示例应该可以工作-
function playAudio(url) {
    // Play the audio file at url
    var my_media = new Media(url,

    // success callback
    function () {
        console.log("playAudio():Audio Success");
    },

    // error callback
    function (err) {
        console.log("playAudio():Audio Error: " + err);
    }
    );

    // Play audio
    my_media.play();
}

关于angularjs - ReferenceError:在Ionic App中未定义媒体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44713620/

相关文章:

javascript - 无法读取 Angular JS 中未定义的属性成功

audio - 添加覆盖但输出有错误的音频

jquery - Easypiechart AngularJs 改变颜色

javascript - AngularJS:观察尺寸的最佳方式?

javascript - 从 cordova java 文件调用 javascript 函数

javascript - 使用 jQuery Mobile 和 $(document).ready 与 PhoneGap Build 和 document.addEventListener ("deviceready")

audio - Icecast流不断重复

Python 将立体声 .flac 转换为单声道

javascript - AngularJS:访问服务中的动态基本 href 值

android - jQuery mobile + phonegap +android 4.0.4 标题闪烁