cordova-plugin-vibration 2.1.2

cordova-plugin-vibration 2.1.2

测试测试过的
Lang语言 Obj-CObjective C
许可协议 Apache 2
发布最新发布2016 年 11 月

Holly SchinskyShazron Abdullah 维护。



  • Adobe PhoneGap 团队编写

标题:振动

描述:振动设备。

Android iOS Windows 8.1 商店 Windows 8.1 手机 Windows 10 商店 Travis CI
Build Status Build Status Build Status Build Status Build Status

cordova-plugin-vibration

此插件符合 W3C 振动规范 http://www.w3.org/TR/vibration/

此插件提供了一种振动设备的方法。

此插件定义了全局对象,包括 navigator.vibrate

尽管它们在全球范围内,但这些对象在 deviceready 事件之后才可用。

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log(navigator.vibrate);
}

⚠️在 Apache Cordova 问题跟踪器上报告问题 Apache Cordova 问题跟踪器

安装

cordova plugin add cordova-plugin-vibration

支持的平台

navigator.vibrate,
navigator.notification.vibrate

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 7 和 8
  • Windows(仅限 Windows Phone 8.1 设备)

navigator.notification.vibrateWithPattern
navigator.notification.cancelVibration

  • Android
  • Windows Phone 8
  • Windows(仅限 Windows Phone 8.1 设备)

振动(推荐)

该函数根据传递给它的参数具有三种不同的功能。

标准振动

以指定的时间振动设备。

navigator.vibrate(time)

navigator.vibrate([time])

-time: 振动设备的时间(毫秒)。 (数字)

示例

// Vibrate for 3 seconds
navigator.vibrate(3000);

// Vibrate for 3 seconds
navigator.vibrate([3000]);

iOS 限制

  • time: 忽略指定时间并振动预置的时间。

    navigator.vibrate(3000); // 3000 被忽略

Windows 和 BlackBerry 限制

  • time: 最大时间是 5000ms(5 秒),最小时间是 1ms。

    navigator.vibrate(8000); // 将被截断为 5000

以模式振动(仅限 Android 和 Windows)

使用给定模式使设备振动

navigator.vibrate(pattern);
  • pattern:设置振动开启和关闭的持续时间(以毫秒为单位)的序列。(数字数组)

示例

// Vibrate for 1 second
// Wait for 1 second
// Vibrate for 3 seconds
// Wait for 1 second
// Vibrate for 5 seconds
navigator.vibrate([1000, 1000, 3000, 1000, 5000]);

Windows Phone 8 的问题

  • 如果使用 vibrate(pattern),将回退到默认持续时间的振动

取消振动(iOS 不支持)

立即取消任何当前正在运行振动。

navigator.vibrate(0)

navigator.vibrate([])

navigator.vibrate([0])

传入参数 0、空数组或只有一个元素值为 0 的数组将取消任何振动。

notification.vibrate(已弃用)

以指定的时间振动设备。

navigator.notification.vibrate(time)
  • time:设备振动的毫秒数。(数字)

示例

// Vibrate for 2.5 seconds
navigator.notification.vibrate(2500);

iOS 的问题

  • time: 忽略指定时间并振动预置的时间。

    navigator.notification.vibrate();
    navigator.notification.vibrate(2500);   // 2500 is ignored
    

notification.vibrateWithPattern(已弃用)

使用给定模式使设备振动。

navigator.notification.vibrateWithPattern(pattern, repeat)
  • pattern:设置振动开启和关闭的持续时间(以毫秒为单位)的序列。(数字数组)
  • repeat:可选模式数组的索引,用于从该索引开始重复(直到取消),或 -1 表示不重复(默认)。(数字)

示例

// Immediately start vibrating
// vibrate for 100ms,
// wait for 100ms,
// vibrate for 200ms,
// wait for 100ms,
// vibrate for 400ms,
// wait for 100ms,
// vibrate for 800ms,
// (do not repeat)
navigator.notification.vibrateWithPattern([0, 100, 100, 200, 100, 400, 100, 800]);

notification.cancelVibration(已弃用)

立即取消任何当前正在运行振动。

navigator.notification.cancelVibration()

注意 - 由于与 w3c 规范一致,带星号的方法将逐步淘汰