插件
触觉反馈
@nativescript/haptics
一个允许您在应用中添加触觉反馈的插件。
播放触觉反馈可以让人们感受到触觉,并将他们对现实世界的熟悉感带入您的应用或游戏中。~ 开发者文档
感谢 Eddy Verbruggen 提供了 nativescript-taptic-engine,它通过简化 API 并添加 Android 支持来不断发展,灵感来自 react-native-haptic-feedback。
内容
安装
CLI
npm install @nativescript/haptics
使用 @nativescript/haptics
在 StackBlitz 上找到 @nativescript/haptics
用法的示例 这里。
API
该插件提供以下 API。
isSupported()
ts
isHapticsSupported: boolean = Haptics.isSupported()
检查设备是否支持触觉反馈。
is6SAnd6SPlusSupported()
ts
isHapticsSupported: boolean = Haptics.is6SAnd6SPlusSupported()
检查 iOS 上是否支持触觉反馈。
selection()
ts
import { Haptics } from '@nativescript/haptics'
Haptics.selection()
notification()
ts
import { Haptics, HapticNotificationType } from '@nativescript/haptics'
Haptics.notification(HapticNotificationType.ERROR)
使用通知反馈生成器来指示成功、失败和警告。
其他触觉通知类型是
SUCCESS
(默认)WARNING
impact()
js
import { Haptics, HapticImpactType } from '@nativescript/haptics'
Haptics.impact(HapticImpactType.HEAVY)
使用冲击反馈生成器来指示冲击的发生。例如,当用户界面对象与某个物体发生碰撞或卡入到位时,您可能会触发冲击反馈。
有 3 种冲击类型
LIGHT
MEDIUM
(默认)HEAVY
.
HapticsFallback
要使用触觉反馈备用方案,请检查是否支持
ts
if (!Haptics.isSupported() && Haptics.is6SAnd6SPlusSupported()) {
// use HapticsFallback
}
注意 这使用的是一个未公开的功能,可能会导致您的应用在 Apple 审查时被拒绝。 虽然有些人已经使用了这种方法,但没有遇到问题。
weakBoom()
这会触发与“Peek & Pop”中的“Peek”相同的效果,这是一个非常短暂的振动。
ts
import { HapticsFallback } from '@nativescript/haptics'
HapticsFallback.weakBoom()
strongBoom()
ts
import { HapticsFallback } from '@nativescript/haptics'
HapticsFallback.strongBoom()
这会触发Peek & Pop
的Pop
效果,比Peek
效果更强烈。
burst()
ts
import { HapticsFallback } from '@nativescript/haptics'
HapticsFallback.burst()
这会触发您在用力按压没有操作的家庭图标时得到的“Nope”效果。它是一连串的 3 个“弱轰鸣”。
更新日志
- 3.0.0 迁移到 @nativescript/haptics 并添加了 Android 支持。调整了命名约定。
- 2.1.0 对代码进行了现代化,迁移到插件种子结构,并添加了 Vue 演示。
- 2.0.0 添加了 iPhone 7 的官方 API。将旧的 API 迁移到 TapticEngineUnofficial.*。需要 Xcode 8 来构建。
- 1.0.0 初始版本,仅限非官方 API。与任何 Xcode 版本兼容。
许可证
Apache 许可证 2.0 版