Cordova媒体插件用于在Cordova应用程序中录制和播放音频声音。
可以通过在命令提示符窗口中运行以下代码来安装Media插件。
C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-media
在本教程中,我们将创建简单的音频播放器。让我们在 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>
现在,我们需要在 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);
我们要添加的第一个函数是 playAudio 。我们在函数之外定义 myMedia ,因为我们想在稍后添加的函数中使用它(pause,stop,volumeUp和volumeDown)。此代码放在 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(); }
我们可以点击播放按钮,从 src 路径启动钢琴音乐。
我们需要的下一个功能是 pauseAudio 和 stopAudio 。
function pauseAudio() { if(myMedia) { myMedia.pause(); } } function stopAudio() { if(myMedia) { myMedia.stop(); } myMedia = null; }
现在,我们可以通过点击暂停或停止按钮暂停或停止钢琴音色。
要设置音量,我们可以使用 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 | 停止播放音频文件。 |