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 );
}