cordova-plugin-vibration
-
安装(通过命令行)
cordova plugin add cordova-plugin-vibration
-
使用
navigator.vibrate(time) or navigator.vibrate([time])
[例:navigator.vibrate(3000);]
-
注意
-
IOS无法控制震动时长(系统固定) && Windows和Blackberry时长范围(5000ms 至 8000ms).
-
Android和Windows可设定震动模式
navigator.vibrate(pattern);
[例:navigator.vibrate([1000, 1000, 3000, 1000, 5000]);]
-
-
取消
navigator.vibrate(0); or navigator.vibrate([]); or navigator.vibrate([0]);
cordova-plugin-media(可后台播放)
-
安装
cordova plugin add cordova-plugin-media
-
使用
-
初始化Media
var media; media = new Media("/android_asset/www/media/example.mp3", function() { alert("Media Init Success"); }, function(err) { alert("Error: " + err); } );
-
play():media.play();
-
pause():media.pause();
-
stop():media.stop();
-
release()[当Media资源不需要用时应该释放]:media.release();
-
setVolume()[范围(0.0 - 1.0)]:media.setVolume(volume);
-
seekTo()[手动设置播放位置]:media.seekTo(milliseconds);
-
getDuration():返回Media时长(s),异常返回-1
var length= media.getDuration(); if (duration > -1) { alert("length== " + length); };
-
getCurrentPosition()
media.getCurrentPosition( function(position) { if (position > -1) { alert("position"); } }, function(err) { alert(err); } );
-
startRecord() & stopRecord()
// 创建文件对象 var recordMedia = new Media( "storage/emulated/0/record.mp3", function() { alert("Success"); }, function(e) { alert("Error" + e); } ); // 开始录音 recordMedia.startRecord();
// 停止录音 recordMedia.stopRecord();
-
cordova-plugin-nativeaudio(针对HTML5游戏和音频应用所需的最小延迟,复调和并发)
-
安装
cordova plugin add cordova-plugin-nativeaudio
-
使用
-
preloadSimple():优化短视频/单镜头(最多五秒). 不能停止/循环.
-
preloadComplex():可以停止/循环和用于多个声音. 可以在使用延迟参数的时间和使用.
-
play: function (id, successCallback, errorCallback, completeCallback)`
-
loop: function (id, successCallback, errorCallback)
-
stop: function (id, successCallback, errorCallback)
-
unload: function (id, successCallback, errorCallback)
-
setVolumeForComplexAsset: function (id, volume, successCallback, errorCallback)
-
-
使用案例
if( window.plugins && window.plugins.NativeAudio ) { // Preload audio resources window.plugins.NativeAudio.preloadComplex( 'music', 'audio/music.mp3', 1, 1, 0, function(msg){ }, function(msg){ console.log( 'error: ' + msg ); }); window.plugins.NativeAudio.preloadSimple( 'click', 'audio/click.mp3', function(msg){ }, function(msg){ console.log( 'error: ' + msg ); }); // Play window.plugins.NativeAudio.play( 'click' ); window.plugins.NativeAudio.loop( 'music' ); // Stop multichannel clip after 60 seconds window.setTimeout( function(){ window.plugins.NativeAudio.stop( 'music' ); window.plugins.NativeAudio.unload( 'music' ); window.plugins.NativeAudio.unload( 'click' ); }, 1000 * 60 ); }