Haptics for NativeScript
npm install @nativescript/hapticsA plugin that allows you to add haptics to your app.
> Playing haptics can engage people's sense of touch and bring their familiarity with the physical world into your app or game.
~ Developer docs
Thanks to Eddy Verbruggen for providing nativescript-taptic-engine as this continues its evolution by streamlining the API and adding Android support, inspired by react-native-haptic-feedback.
* Installation
* Use @nativescript/haptics
* API
* isSupported()
* selection()
* notifcation()
* impact()
* HapticsFallback
* weakBoom()
* strongBoom()
* burst()
``cli`
npm install @nativescript/haptics
Find an example of @nativescript/haptics usage here on StackBlitz.
The plugin provides the API below.
ts
isHapticsSupported: boolean = Haptics.isSupported()
`
Checks if haptics is supported on the device.---
$3
`ts
import { Haptics } from "@nativescript/haptics";Haptics.selection();
`$3
`ts
import { Haptics, HapticNotificationType } from "@nativescript/haptics";Haptics.notification(HapticNotificationType.ERROR);
`Use notification feedback generators to indicate success, failure, and warning.
Other haptic notification types are:
-
SUCCESS(default)
- WARNING$3
`js
import { Haptics, HapticImpactType } from "@nativescript/haptics";Haptics.impact(HapticImpactType.HEAVY);
`Use impact feedback generators to indicate that an impact has occurred.
For example, you might trigger impact feedback when a user interface object
collides with something or snaps into place.
There are 3 impact types:
-
LIGHT
- MEDIUM (default)
- HEAVY.$3
To use the haptics fallbacks, check if there is support:
`ts
if (!Haptics.isSupported()) {
// use HapticsFallback
}
`__BEWARE__ This uses an undocumented feature that may get your app rejected when reviewed by Apple.
People have used this approach __without problems__ though.
$3
This triggers the same effect as the 'Peek' in 'Peek & Pop', a very brief vibration.`ts
import { HapticsFallback } from "@nativescript/haptics";HapticsFallback.weakBoom();
`$3
`ts
import { HapticsFallback } from "@nativescript/haptics";HapticsFallback.strongBoom();
`
This triggers the Pop effect of Peek & Pop, which is a bit more profound than the Peek effect.$3
`ts
import { HapticsFallback } from "@nativescript/haptics";HapticsFallback.burst();
`
This triggers the Nope` effect you get when force-touching a home icon that doesn't have any action. It's a short burst of 3-ish 'weak booms'.Apache License Version 2.0