2015-01-02 60 views
1

我試圖在移動式混合應用程序播放聲音(科爾多瓦,離子,howlerJS V 2),https://github.com/goldfire/howler.js/tree/2.0吼JS 2.0 - 聲音不玩科爾多瓦,機器人,設備

通過這種方式:

$scope.playSelectedItem = function(index) { 
      try { 
       var fileName = $scope.selectedSounds[index].file; 
       var filePath = "sounds/" +fileName+".mp3"; 
       console.log(filePath); 
       var sound = new Howl({ 
        src: [filePath] 
       }); 

       sound.play(); 

      } catch(e) { 
       $scope.showAlert(); 
      } 
     }; 

在Chrome移動模擬器中一切正常,但在設備上聲音沒有播放。 我檢查了manifest.xml中的應用程序權限,並且聲音播放不需要任何特殊權限。

我做錯了什麼?

感謝您的任何幫助。

回答

0

嘗試使用由科爾多瓦提供媒體插件:

my_media = new Media('/android_asset/www/sound.mp3', 
       // success callback 
       function() { 
        WL.Logger.debug("playAudio():Audio Success"); 
       }, 
       // error callback 
       function(err) { 
        WL.Logger.debug("playAudio():Audio Error: " + JSON.stringify(err)); 
       }); 

       // Play audio 
       my_media.play(); 

確保添加「/ android_asset」,然後你的路徑聲音文件。 Android需要一個絕對路徑來查找文件並播放它。

+1

你已經提供了一個替代...但沒有回答你錯誤的聲音文件路徑中的問題 – Howard

+0

,在android中你應該這樣做「/android_asset/www/sound.mp3」 –

相關問題