2016-08-11 3 views
0

オーディオがまだ再生されているときと、他のアクションを実行するために停止したときを知りたい。これらのオプションのどれも私のためには機能しません。同じファイルを再生しますが、停止している場合にのみ、私は数日のためにしてみてください、それはまだ後に、その後、ブランクメディアプレーヤーを作成するメディアを設定することで、私はこれを行っているコードボーイメディアプラグインのステータスが機能していません

function reproducirAudio(ruta) { 
     var ruta = "/android_asset/www/sounds/button-1.mp3"; 
     $scope.media2 = new Media(ruta, function() { 
      $scope.media2.play(); 

     }, function (b) { 
     }, function (a) { 
      alert(JSON.stringify(a)); 
     }); 

    } 

function reproducirAudio(ruta) { 
     var ruta = "/android_asset/www/sounds/button-1.mp3"; 
     $scope.media2 = new Media(ruta, bien,mal,status); 
      function bien(){ $scope.media2.play();} 
      function mal(){} 
      function status(estatus){ console.log("status")} 
} 

function reproducirAudio(ruta) { 
     var ruta = "/android_asset/www/sounds/button-1.mp3"; 
     $scope.media2 = new Media(ruta, bien,mal,status); 
      function bien(){ $scope.media2.play();} 
      function mal(){} 
      function status(estatus){ alert(status)} 
} 

function reproducirAudio(ruta) { 
     var ruta = "/android_asset/www/sounds/button-1.mp3"; 
     $scope.media2 = new Media(ruta, bien,mal,getStatusMessage); 
      function bien(){ $scope.media2.play();} 
      function mal(){} 


    function getStatusMessage(status){ 

    if(status === 0){console.log('Media.MEDIA_NONE');} 
     else if(status === 1){console.log('Media.MEDIA_STARTING');} 
     else if(status === 2){console.log('Media.MEDIA_RUNNING');} 
     else if(status === 3){console.log('Media.MEDIA_PAUSED');} 
     else if(status === 4){console.log('Media.MEDIA_STOPPED');} 
    } 
} 

答えて

0

動作しないために私が試してみました。再生中かどうかをテストするには、メディアプレーヤーがヌルか未定義かどうかをテストするチェックを実行します。

$scope.media; 
$scope.media = new Media("some/media/path.mp3); 

if ($scope.media != null) { 
    someAction(); 
} 
else { 
    otherAction(); 
} 

別のオプションは、メディアの長さが

$scope.media.getCurrentPosition(
    //success 
    function (position) { 
     if (position > 0) { 
      console.log("A song is playing!"); 
     } 
    }, 
    // error 
    function() { 
     console.log("An error occured!"); 
    } 
); 
+0

私はこのコードを試します。ありがとう –

0

0よりも大きいが、最終的にそれが働いているかどうかをテストすることです。私はこのコードを書いて、コードバスメディアプラグイン1.0.1へのダウングレードを実現しました。

function reproducirAudioPorBoton(ruta) { 
      var audiofile = new Media('file:///android_asset/www/sounds/M.mp3'); 
      audiofile.play(); 
      var counter=0; 
      var timerDur = setInterval(function() { 
       counter = counter + 100; 
       if (counter > 2000) { 
        clearInterval(timerDur); 
       } 
       var dur = audiofile.getDuration(); 
       if (dur > 0) { 
        clearInterval(timerDur); 
        console.log(dur + " sec"); 
       } 
      }, 100); 
     } 
関連する問題