• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 输入设备
2
3
4输入设备管理模块,用于监听输入设备连接、断开和变化,并查看输入设备相关信息。比如监听鼠标插拔,并获取鼠标的id、name和指针移动速度等信息。
5
6
7> **说明**:<br>
8> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
9
10
11## 导入模块
12
13
14```js
15import inputDevice from '@ohos.multimodalInput.inputDevice';
16```
17
18
19## inputDevice.getDeviceIds
20
21getDeviceIds(callback: AsyncCallback&lt;Array&lt;number&gt;&gt;): void
22
23获取所有输入设备的id列表,使用callback方式作为异步方法。
24
25**系统能力**:SystemCapability.MultimodalInput.Input.InputDevice
26
27**参数**:
28
29| 参数       | 类型                                       | 必填   | 说明    |
30| -------- | ---------------------------------------- | ---- | ----- |
31| callback | AsyncCallback&lt;Array&lt;number&gt;&gt; | 是    | 回调函数。 |
32
33**示例**:
34
35```js
36inputDevice.getDeviceIds((ids)=>{
37    console.log("The device ID list is: " + ids);
38});
39```
40
41## inputDevice.getDeviceIds
42
43getDeviceIds(): Promise&lt;Array&lt;number&gt;&gt;
44
45获取所有输入设备的id列表,使用Promise方式作为异步方法。
46
47**系统能力**:SystemCapability.MultimodalInput.Input.InputDevice
48
49**返回值**:
50
51| 参数                                 | 说明                  |
52| ---------------------------------- | ------------------- |
53| Promise&lt;Array&lt;number&gt;&gt; | Promise实例,用于异步获取结果。 |
54
55**示例**:
56
57```js
58inputDevice.getDeviceIds().then((ids)=>{
59    console.log("The device ID list is: " + ids);
60});
61```
62
63## inputDevice.getDevice
64
65getDevice(deviceId: number, callback: AsyncCallback&lt;InputDeviceData&gt;): void
66
67获取输入设备的描述信息,使用callback方式作为异步方法。
68
69**系统能力**:SystemCapability.MultimodalInput.Input.InputDevice
70
71**参数**:
72
73| 参数       | 类型                                       | 必填   | 说明                          |
74| -------- | ---------------------------------------- | ---- | --------------------------- |
75| deviceId | number                                   | 是    | 需要获取信息的设备id。                |
76| callback | AsyncCallback&lt;[InputDeviceData](#inputdevicedata)&gt; | 是    | 回调函数,异步返回InputDeviceData对象。 |
77
78**示例**:
79
80```js
81// 示例获取设备id为1的设备name信息。
82inputDevice.getDevice(1, (inputDevice)=>{
83    console.log("The device name is: " + inputDevice.name);
84});
85```
86
87## inputDevice.getDevice
88
89getDevice(deviceId: number): Promise&lt;InputDeviceData&gt;
90
91获取输入设备的描述信息,使用Promise方式作为异步方法。
92
93**系统能力**:SystemCapability.MultimodalInput.Input.InputDevice
94
95**参数**:
96
97| 参数       | 类型     | 必填   | 说明           |
98| -------- | ------ | ---- | ------------ |
99| deviceId | number | 是    | 需要获取信息的设备id。 |
100
101**返回值**:
102
103| 参数                                       | 说明                  |
104| ---------------------------------------- | ------------------- |
105| Promise&lt;[InputDeviceData](#inputdevicedata)&gt; | Promise实例,用于异步获取结果。 |
106
107**示例**:
108
109```js
110// 示例获取设备id为1的设备name信息。
111inputDevice.getDevice(1).then((inputDevice)=>{
112    console.log("The device name is: " + inputDevice.name);
113});
114```
115
116
117
118## InputDeviceData
119
120输入设备的描述信息。
121
122**系统能力**:以下各项对应的系统能力均为SystemCapability.MultimodalInput.Input.InputDevice
123
124| 名称                   | 参数类型                                   | 说明                                       |
125| -------------------- | -------------------------------------- | ---------------------------------------- |
126| id                   | number                                 | 输入设备的唯一标识,同一个物理设备反复插拔,其设备id会发生变化。        |
127| name                 | string                                 | 输入设备的名字。                                 |
128| sources              | Array&lt;[SourceType](#sourcetype)&gt; | 输入设备支持的源类型。比如有的键盘上附带触摸板,则此设备有keyboard和touchpad两种输入源。 |
129| axisRanges           | Array&lt;[axisRanges](#axisrange)&gt;  | 输入设备的轴信息。                                |
130
131## AxisType<sup>9+</sup>
132
133输入设备的轴类型。
134
135## AxisRange
136
137输入设备的轴信息。
138
139**系统能力**: 以下各项对应的系统能力均为SystemCapability.MultimodalInput.Input.InputDevice
140
141| 名称     | 参数类型                      | 说明       |
142| ------ | ------------------------- | -------- |
143| source | [SourceType](#sourcetype) | 轴的输入源类型。 |
144| axis   | [AxisType](#axistype)     | 轴的类型     |
145| max    | number                    | 轴上报的最大值  |
146| min    | number                    | 轴上报的最小值  |
147
148
149## SourceType
150
151定义这个轴的输入源类型。比如鼠标设备可上报x轴事件,则x轴的源就是鼠标。
152
153**系统能力**:以下各项对应的系统能力均为SystemCapability.MultimodalInput.Input.InputDevice
154
155| 名称          | 参数类型   | 说明          |
156| ----------- | ------ | ----------- |
157| keyboard    | string | 表示输入设备是键盘。  |
158| touchscreen | string | 表示输入设备是触摸屏。 |
159| mouse       | string | 表示输入设备是鼠标。  |
160| trackball   | string | 表示输入设备是轨迹球。 |
161| touchpad    | string | 表示输入设备是触摸板。 |
162| joystick    | string | 表示输入设备是操纵杆。 |
163