我正在使用Cordova Media插件1.0.1在Ionic移动应用程序中。我正在使用该插件播放音频文件。
我能够使用以下方法播放音频:
var media = $cordovaMedia.newMedia(fileToPlay,
// success callback
mediaSuccess,
// error callback
mediaFailure,
// status callback
mediaStatus
);
我可以调用 media.play() 来播放文件。
但是,回调函数似乎从未执行。我已将它们定义为:
function mediaSuccess () {
console.log("Successfully finished task.");
}
function mediaFailure (err) {
console.log("An error occurred: " + err.code);
}
function mediaStatus (status) {
console.log("A status change occurred: " + status.code);
}
但是它们从未被调用。然而,在我的控制台中,我会看到来自播放器本身的日志,因为它开始和停止播放。
Will attempt to use file resource '//var/mobile/Containers/Data/Application/931BFA01-CDA4-43CD-BC16-7FB6A64305DC/Library/NoCloud/DateTime-1446772191539audio_007.wav'
Playing audio sample '//var/mobile/Containers/Data/Application/931BFA01-CDA4-43CD-BC16-7FB6A64305DC/Library/NoCloud/DateTime-1446772191539audio_007.wav'
Stopped playing audio sample '//var/mobile/Containers/Data/Application/931BFA01-CDA4-43CD-BC16-7FB6A64305DC/Library/NoCloud/DateTime-1446772191539audio_007.wav'
这些日志事件已经传输到控制台,但它们不在我的代码中,所以它们必须来自媒体对象。
我需要获取状态变化和/或成功回调,因为我需要更新模型以启用播放,但是当剪辑完成播放时再次更新模型。
你有什么想法吗?