Cordova多媒體

Cordova 媒體插件用來錄製和 Cordova 應用程式播放音頻聲音。

第1步 - 安裝插件媒體

媒體插件可以通過在命令提示符窗口中執行下麵的代碼安裝。
C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-media

第2步 - 添加按鈕

本教程中,我們將創建一個簡單的音頻播放。我們創建一個按鈕在 index.html 檔中。
<button id = "playAudio">PLAY</button>
<button id = "pauseAudio">PAUSE</button>
<button id = "stopAudio">STOP</button>
<button id = "volumeUp">VOLUME UP</button>
<button id = "volumeDown">VOLUME DOWN</button>

第3步 - 添加事件監聽器

現在,我們需要為按鈕添加事件偵聽器在檔 index.js 中的 onDeviceReady 函數內。
document.getElementById("playAudio").addEventListener("click", playAudio);
document.getElementById("pauseAudio").addEventListener("click", pauseAudio);
document.getElementById("stopAudio").addEventListener("click", stopAudio);
document.getElementById("volumeUp").addEventListener("click", volumeUp);
document.getElementById("volumeDown").addEventListener("click", volumeDown);

步驟4A - 播放功能

我們要添加的第一個函數是 playAudio。我們定義myMedia 在函數之外是因為我們希望在將要在以後添加的函數可以使用它(暫停,停止,音量增加和音量減小)。此代碼放置在 index.js 檔中。

var myMedia = null;

function playAudio() {
   var src = "/android_asset/www/audio/piano.mp3";

   if(myMedia === null) {
      myMedia = new Media(src, onSuccess, onError);

      function onSuccess() {
         console.log("playAudio Success");
      }

      function onError(error) {
         console.log("playAudio Error: " + error.code);
      }

   }

   myMedia.play();
}

我們點擊 PLAY 按鈕,開始由在 src 指定的路徑播放鋼琴音樂。

步驟4B - 暫停和停止函數功能

我們所需要的下一個函數是pauseAudio 和 stopAudio
function pauseAudio() {
   if(myMedia) {
      myMedia.pause();
   }
}

function stopAudio() {
   if(myMedia) {
      myMedia.stop();
   }

   myMedia = null;
}
現在,我們可以暫停或通過單擊暫停或停止按鈕來停止鋼琴的聲音。

步驟4C - 音量函數功能

要設置音量,我們可以使用 setVolume 方法。此方法需要使用參數值是從0到1。設置初值為0.5。

var volumeValue = 0.5;

function volumeUp() {
   if(myMedia && volumeValue < 1) {
      myMedia.setVolume(volumeValue += 0.1);
   }
}

function volumeDown() {
   if(myMedia && volumeValue > 0) {
      myMedia.setVolume(volumeValue -= 0.1);
   }
} 

當按 VOLUME UP 或 VOLUME DOWN 就可以通過改變音量0.1的值。

該插件提供如下表顯示的其他方法。
方法 詳細
getCurrentPosition
返回音頻的當前位置
getDuration
返回一個音頻的持續時間
play
用於開始或恢復音頻
pause
用於暫停音頻
release
發佈底層操作系統的音頻資源
seekTo
用於改變音頻的位置
setVolume
用於音頻設置音量
startRecord
開始錄製音頻檔
stopRecord
停止錄製音頻檔
stop
停止播放音頻檔

上一篇: Cordova InAppBrowser打開Web流覽器 下一篇: Cordova視頻錄製