1# @system.vibrator (振动)
2
3vibrator模块提供控制马达振动的能力,主要包含灯的列表查询、打开灯、关闭灯等接口,振动器的列表查询、振动器的振动器效果查询、触发/关闭振动器等接口。
4
5控制类小器件指的是设备上的LED灯和振动器。其中,LED灯主要用作指示(如充电状态)、闪烁功能(如三色灯)等;振动器主要用于闹钟、开关机振动、来电振动等场景。
6
7
8> **说明:**
9> - 本模块首批接口从API version 3开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
10> - 从API Version 8开始,该接口不再维护,推荐使用新接口[`@ohos.vibrator`](js-apis-vibrator.md)。
11> - 该功能使用需要对应硬件支持,仅支持真机调试。
12
13
14## 导入模块
15
16
17```ts
18import { Vibrator } from '@kit.SensorServiceKit';
19```
20
21## Vibrator.vibrate
22
23 vibrate(options?: VibrateOptions): void
24
25触发设备振动。
26
27**需要权限**:ohos.permission.VIBRATE
28
29**系统能力**:SystemCapability.Sensors.MiscDevice.Lite
30
31**参数**:
32
33| 参数名  | 类型                              | 必填 | 说明       |
34| ------- | --------------------------------- | ---- | ---------- |
35| options | [VibrateOptions](#vibrateoptions) | 否   | 振动模式。 |
36
37**示例**:
38
39```ts
40import { Vibrator, VibrateOptions } from '@kit.SensorServiceKit';
41
42let vibrateOptions: VibrateOptions = {
43  mode: 'short',
44  success: () => {
45    console.info('Succeed in vibrating');
46  },
47  fail: (data: string, code: number) => {
48    console.info(`Failed to vibrate. Data: ${data}, code: ${code}`);
49  },
50  complete: () => {
51    console.info('completed in vibrating');
52  }
53};
54Vibrator.vibrate(vibrateOptions);
55```
56
57## VibrateOptions
58
59振动模式。
60
61**需要权限**:ohos.permission.VIBRATE
62
63**系统能力**:SystemCapability.Sensors.MiscDevice.Lite
64
65| 名称     | 类型     | 必填 | 说明                                                         |
66| -------- | -------- | ---- | ------------------------------------------------------------ |
67| mode     | string   | 否   | 振动的模式,其中long表示长振动,short表示短振动,默认值为long。 |
68| success  | Function | 否   | 感应到振动数据变化后的回调函数。                             |
69| fail     | Function | 否   | 接口调用失败的回调函数。                                     |
70| complete | Function | 否   | 接口调用结束的回调函数。                                     |