HarmonyOS NEXT鸿蒙开发:vibrator 振动

说明

官方指南

官方API

当设备需要设置 振动 时,可以调用 Vibrator 模块

应用场景

  • 设备的按键可以设置不同强度和不同时长的振动

  • 闹钟和来电可以设置不同强度和时长的单次或周期振动

需要权限

ohos.permission.VIBRATE

导入模块

import { vibrator } from '@kit.SensorServiceKit';

开始震动

根据指定的振动效果和振动属性触发马达振动。使用callback异步回调。

startVibration(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback<void>): void
参数
  • effect:类型:VibrateEffect,必填,马达振动效果,支持三种:
  • attribute:类型:VibrateAttribute,必填,马达振动属性。

  • callback:类型:AsyncCallback<void>,必填,回调函数,当马达振动成功,err 为 undefined,否则为错误对象。

VibrateEffect

VibrateTime 对象

按照指定持续时间触发马达振动

属性:

  • type:必填,值为 'time',按照指定持续时间触发马达振动。
  • duration:类型:number,马达持续振动时长, 单位 ms。

VibratePreset

按照预置振动效果触发马达振动;

属性:

  • type:必填,值为 'preset',按照预置振动效果触发马达振动。

  • effectId:类型:string,必填,预置的振动效果ID。

  • count:类型:number,振动的重复次数,默认值为1。

  • intensity:类型:number,振动调节强度,范围为 0到100,默认值为 100。若振动效果不支持强度调节或设备不支持时,则按默认强度振动。

VibrateFromFile

自定义振动类型,仅部分设备支持,当设备不支持此振动类型时,返回设备不支持错误码。

属性:

  • type:必填,值为 'file',按照振动配置文件触发马达振动。

  • hapticFd:类型:HapticFileDescriptor,必填,振动配置文件的描述符。

例子

// 震动
vibrator.startVibration({
  type: 'time',
  duration: 1000
}, {
  id: 0,
  usage: 'alarm'
})

原文出处:/show_1GW3tLFlPTm.html