2017-01-13 11 views
0

後、私はIonic1で作業し、ここconfussingの問題を持ってしようとしたメディアを再生する:イオンが停止

を私は別の1が停止した後、メディア(mp3など)DIREKTを再生したいです。 話す:曲のリストがある。任意のヒントを事前に

ありがとう:1が実行されている場合は - ...その後、電流を停止し、新しいものを開始し

をしかし、私はここで... を何かを逃したコードがある - 別のものをクリックしてください。

!サウンドは、タイトル、URL、およびステータスがステータスのオブジェクトです。 !

var currentSound, currentMedia; 
    $scope.play = function(sound) { 

    if(currentMedia && currentSound && currentSound.sta == 1){ 
     currentMedia.stop(); 
     currentSound.sta = 0; 

     if(sound.title === currentSound.title) return; 
    } 

    var mediaUrl = sound.url; 
    if(device.platform.indexOf("iOS") >= 0) { 
     mediaUrl = "../Library/NoCloud/" + mediaUrl.split("/").pop(); 
    } 

    currentSound = sound; 
    currentMedia = new Media(mediaUrl, 
     function() { 
      currentMedia.release(); 
      currentSound.sta = 0; 
     }, function(err) { 
      console.log("media err", err); 
     }, function (sta) { 
      if(sta == Media.MEDIA_RUNNING) 
      { 
      currentSound.sta = 1; 
      } 
      else 
      { 
      currentSound.sta = 0; 
      } 
     }); 

    currentMedia.play(); 
    currentSound.sta = 1; 

    } 

答えて

0

OK - わかりませんが解決策が見つかりました。 (私はあなたの知恵のために開いています)

解決方法:停止する場合は、関数recursivlyを呼び出すだけで、メディアを起動します。&

var currentSound、currentMedia; $ scope.play =関数(音){

if(currentMedia && currentSound && currentSound.sta == 1){ 
    currentMedia.stop(); 
    currentSound.sta = 0; 

    if(sound.title === currentSound.title) 
    { 
    return; 
    } 
    else 
    { 
    $scope.play(sound); 
    } 
} 

var mediaUrl = sound.url; 
if(device.platform.indexOf("iOS") >= 0) { 
    mediaUrl = "../Library/NoCloud/" + mediaUrl.split("/").pop(); 
} 

currentSound = sound; 
currentMedia = new Media(mediaUrl, 
    function() { 
     currentMedia.release(); 
     currentSound.sta = 0; 

    }, function(err) { 
     console.log("media err", err); 

    }, function (sta) { 

     if(sta == Media.MEDIA_RUNNING) 
     { 
     currentSound.sta = 1; 
     } 
     else 
     { 
     currentSound.sta = 0; 
     } 
    }); 

currentMedia.play(); 
currentSound.sta = 1; 

}

関連する問題