Skip to content
Mirror of Apache Cordova Plugin vibration
JavaScript C++ C# Java Objective-C

README.md

title description
Vibration
Vibrate the device.
Android iOS Windows 8.1 Store Windows 8.1 Phone Windows 10 Store Travis CI
Build Status Build Status Build Status Build Status Build Status Build Status

cordova-plugin-vibration

This plugin aligns with the W3C vibration specification http://www.w3.org/TR/vibration/

This plugin provides a way to vibrate the device.

This plugin defines global objects including navigator.vibrate.

Although in the global scope, they are 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

navigator.vibrate,
navigator.notification.vibrate

  • Amazon Fire OS
  • Android
  • BlackBerry 10
  • Firefox OS
  • iOS
  • Windows Phone 7 and 8
  • Windows (Windows Phone 8.1 devices only)

navigator.notification.vibrateWithPattern
navigator.notification.cancelVibration

  • Android
  • Windows Phone 8
  • Windows (Windows Phone 8.1 devices only)

vibrate (recommended)

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

iOS Quirks

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

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

Windows and Blackberry Quirks

  • time: Max time is 5000ms (5s) and min time is 1ms

    navigator.vibrate(8000); // will be truncated to 5000

Vibrate with a pattern (Android and Windows only)

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

Windows Phone 8 Quirks

  • vibrate(pattern) falls back on vibrate with default duration

Cancel vibration (not supported in iOS)

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.

*notification.vibrate (deprecated)

Vibrates the device for a given amount of time.

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

Example

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

iOS Quirks

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

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

*notification.vibrateWithPattern (deprecated)

Vibrates the device with a given pattern.

navigator.notification.vibrateWithPattern(pattern, repeat)
  • pattern: Sequence of durations (in milliseconds) for which to turn on or off the vibrator. (Array of Numbers)
  • repeat: Optional index into the pattern array at which to start repeating (will repeat until canceled), or -1 for no repetition (default). (Number)

Example

// 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 (deprecated)

Immediately cancels any currently running vibration.

navigator.notification.cancelVibration()

*Note - due to alignment with w3c spec, the starred methods will be phased out

Something went wrong with that request. Please try again.