Apache Cordova Vibration Plugin

Clone this repo:
  1. a06b0fb chore: bump @cordova/eslint-config (#121) by TAICHI · 6 weeks ago master
  2. 81ade42 ci: sync workflow w/ paramedic (#122) by TAICHI · 7 weeks ago
  3. edab4c4 chore(windows)!: drop windows (#120) by TAICHI · 7 weeks ago
  4. 36616ca chore: bump 4.0.0-dev (#123) by エリス · 7 weeks ago
  5. 0e347b6 ci: sync workflow w/ paramedic (#118) by エリス · 11 months ago

title: Vibration description: Vibrate the device.

cordova-plugin-vibration

Android Testsuite Chrome Testsuite iOS Testsuite Lint Test

This plugin provides a way to vibrate the device. Its API aligns with the W3C vibration specification at http://www.w3.org/TR/vibration/

The plugin defines a global object/method navigator.vibrate. Although in the global scope, it is not available until after the deviceready event.

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

Installation

cordova plugin add cordova-plugin-vibration

Supported Platforms

  • iOS
  • Android
    The Android webview (API level 19 and up) supports the W3C Vibration API natively, so no Android specific implementation in this plugin is necessary.

navigator.vibrate

This function has three different functionalities based on parameters passed to it:

Standard vibrate

Vibrates the device for a given amount of time.

navigator.vibrate(time)

or

navigator.vibrate([time])
  • time: Milliseconds to vibrate the device. (Number)

Example

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

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

Quirks

iOS Quirks
  • time: Ignores the specified time and vibrates for a pre-set amount of time.

    navigator.vibrate(3000); // 3000 is ignored
    
Android Quirks

Calls to navigator.vibrate will immediately return false if user hasn't tapped on the frame or any embedded frame yet.

See https://www.chromestatus.com/feature/5644273861001216

Vibrate with a pattern

Vibrates the device with a given pattern

navigator.vibrate(pattern);
  • pattern: Sequence of durations (in milliseconds) for which to turn on or off the vibrator. (Array of Numbers)

Example

// 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]);

Quirks

  • Not supported on iOS

Cancel vibration

Immediately cancels any currently running vibration.

navigator.vibrate(0)

or

navigator.vibrate([])

or

navigator.vibrate([0])

Passing in a parameter of 0, an empty array, or an array with one element of value 0 will cancel any vibrations.

Quirks

  • Not supported on iOS