Skip to main content
Version: v7 (beta)

@capacitor/haptics

The Haptics API provides physical feedback to the user through touch or vibration.

On devices that don't have Taptic Engine or Vibrator, the API calls will resolve without performing any action.

Install

npm install @capacitor/haptics
npx cap sync

Example

import { Haptics, ImpactStyle } from '@capacitor/haptics';

const hapticsImpactMedium = async () => {
await Haptics.impact({ style: ImpactStyle.Medium });
};

const hapticsImpactLight = async () => {
await Haptics.impact({ style: ImpactStyle.Light });
};

const hapticsVibrate = async () => {
await Haptics.vibrate();
};

const hapticsSelectionStart = async () => {
await Haptics.selectionStart();
};

const hapticsSelectionChanged = async () => {
await Haptics.selectionChanged();
};

const hapticsSelectionEnd = async () => {
await Haptics.selectionEnd();
};

API

impact(...)

impact(options?: ImpactOptions | undefined) => Promise<void>

Trigger a haptics "impact" feedback

ParamType
optionsImpactOptions

Since: 1.0.0


notification(...)

notification(options?: NotificationOptions | undefined) => Promise<void>

Trigger a haptics "notification" feedback

ParamType
optionsNotificationOptions

Since: 1.0.0


vibrate(...)

vibrate(options?: VibrateOptions | undefined) => Promise<void>

Vibrate the device

ParamType
optionsVibrateOptions

Since: 1.0.0


selectionStart()

selectionStart() => Promise<void>

Trigger a selection started haptic hint

Since: 1.0.0


selectionChanged()

selectionChanged() => Promise<void>

Trigger a selection changed haptic hint. If a selection was started already, this will cause the device to provide haptic feedback

Since: 1.0.0


selectionEnd()

selectionEnd() => Promise<void>

If selectionStart() was called, selectionEnd() ends the selection. For example, call this when a user has lifted their finger from a control

Since: 1.0.0


Interfaces

ImpactOptions

PropTypeDescriptionDefaultSince
styleImpactStyleImpact Feedback Style The mass of the objects in the collision simulated by a UIImpactFeedbackGenerator object.ImpactStyle.Heavy1.0.0

NotificationOptions

PropTypeDescriptionDefaultSince
typeNotificationTypeNotification Feedback Type The type of notification feedback generated by a UINotificationFeedbackGenerator object.NotificationType.SUCCESS1.0.0

VibrateOptions

PropTypeDescriptionDefaultSince
durationnumberDuration of the vibration in milliseconds.3001.0.0

Enums

ImpactStyle

MembersValueDescriptionSince
Heavy'HEAVY'A collision between large, heavy user interface elements1.0.0
Medium'MEDIUM'A collision between moderately sized user interface elements1.0.0
Light'LIGHT'A collision between small, light user interface elements1.0.0

NotificationType

MembersValueDescriptionSince
Success'SUCCESS'A notification feedback type indicating that a task has completed successfully1.0.0
Warning'WARNING'A notification feedback type indicating that a task has produced a warning1.0.0
Error'ERROR'A notification feedback type indicating that a task has failed1.0.0