cordova-plugin-media未触发成功或失败事件

时间:2015-09-24 22:40:01

标签: javascript cordova ionic phonegap-plugins cordova-plugins

我的javascript技能开始提高(我认为),但我对cordova-plugin-media有一个非常奇怪的问题

我已将插件添加到cordova,但是当我定义媒体对象时,成功或失败事件都没有触发。

我在代码中添加了很多控制台提示:

$scope.testSound = function() {
    console.log("!!!!!!! DEFINING THE PATH");
    var src = "snd/emergency.wav";

    console.log("!!!!!!! DEFINING THE MEDIA OBJECT");
    var emergencySound = new Media(src, mediaSuccess, mediaError);  
    console.log("WE SHOULD BE FIRING THE SUCCESS OR FAIL METHODS NOW");

    function  mediaSuccess(){
        console.log("!!!!!!!!!!!!!!!!!!!Success");
        alert("Media loaded");
    }

    function mediaError(err){
        console.log("!!!!!!!!!!!!!!!!!!!!!!FAIL");
        alert("Media failed to load");
    }
    console.log("!!!!!!!!!!!!!!!!!!!!!!METHOD COMPLETE");

}

})

,输出如下:

I/chromium( 2978): [INFO:CONSOLE(173)] "!!!!!!! DEFINING THE PATH", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

I/chromium( 2978): [INFO:CONSOLE(173)] "!!!!!!! DEFINING THE MEDIA OBJECT", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

I/chromium( 2978): [INFO:CONSOLE(173)] "WE SHOULD BE FIRING THE SUCCESS OR FAILMETHODS NOW", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

I/chromium( 2978): [INFO:CONSOLE(173)] "!!!!!!!!!!!!!!!!!!!!!!METHOD COMPLETE",source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

我希望触发失败方法,因为我认为我的媒体文件路径没有正确的语法,但不仅失败不会触发,而且没有迹象表明代码存在问题(Android 4.4.2)。

2 个答案:

答案 0 :(得分:1)

看起来像一个错误,我通过不检查定义媒体对象是否有任何错误来解决这个问题。

答案 1 :(得分:0)

您应该检查媒体状态:

var media = new Media(src, mediaSuccess, [mediaError], [mediaStatus]);
  

Media.MEDIA_NONE = 0;

     

Media.MEDIA_STARTING = 1;

     

Media.MEDIA_RUNNING = 2;

     

Media.MEDIA_PAUSED = 3;

     

Media.MEDIA_STOPPED = 4;

试试这个媒体功能: media.getCurrentPosition(mediaSuccess, [mediaError]);

让我知道。

尼科