我正在用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/