2013-07-16 83 views
4

音頻標籤是否適用於android原生應用程序?
我一直在尋找一段時間,但我找不到一個帖子,告訴我它是否被支持,或者我需要做些什麼來使它工作。apache cordova上的html5音頻android native app

<audio id="Multimedia1" controls="controls" width="100%" height="30px"> 
<source src="file:///android_asset/www/Resources/audio.mp3"> 
Your browser does not support audio. 
</audio> 

它不加載音頻。 我試過不同的路徑,如:

Resources/audio.mp3 
www/Resources/audio.mp3 
file:///android_asset/www/Resources/audio.mp3 

如果我瀏覽的index.html的瀏覽器(沒有原生應用),音頻播放罰款的相對路徑。

但我不能讓它與apache cordova應用程序一起工作。

任何想法? 在此先感謝!

回答

3

我在Cordova 2.3.0中遇到了與HTML5中的audio標籤相同的問題。我落得這樣做是使用JavaScript只是發揮他們:

這裏的audio.js我放在JS文件夾:

function playAudio(src) { 
    src = '/android_asset/www/' + src; 
    var media = new Media(src, success, errorThrown); 
    media.play(); 
} 

function success() {} 
function errorThrown(e) { 
    alert('Error while playing the sound!'); 
} 

然後在HTML代碼中你這樣做:

<script src="js/audio.js"></script> 

併發揮聲音的<script>塊補充一點:

playAudio("media/your_sound.wav"); 
+0

謝謝! 我放棄了嘗試使音頻標籤正常工作並使用相同的策略。 –

2

同樣的問題:我發現問題是,爲了能夠在HTML5音頻中使用.play()函數,它必須在用戶界面事件處理程序(例如,點擊)這裏詳述:

https://code.google.com/p/chromium/issues/detail?id=178297

這是在移動瀏覽器的共同政策,以試圖避免將自動播放的東西,並通過它似乎刻錄數據的網站。人們可以使用這個https://gist.github.com/blairvanderhoof/9380545來設置應用程序使用的webview來解決這個問題。我正在做一個插件,當安裝將改變這種行爲。

-Mike