• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.multimodalInput.infraredEmitter (红外管理)
2
3<!--Kit: Input Kit-->
4<!--Subsystem: MultimodalInput-->
5<!--Owner: @zhaoxueyuan-->
6<!--Designer: @hanruofei-->
7<!--Tester: @Lyuxin-->
8<!--Adviser: @Brilliantry_Rui-->
9
10红外管理模块提供产生特定频率和大小的红外信号,以及查询设备支持的频率范围等功能。
11
12> **说明**:
13>
14> - 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
15>
16
17## 导入模块
18
19```js
20import { infraredEmitter } from '@kit.InputKit';
21```
22
23## infraredEmitter.transmitInfrared<sup>15+</sup>
24
25transmitInfrared(infraredFrequency: number, pattern: Array&lt;number&gt;): void
26
27产生特定频率和特定电平大小的红外信号。
28
29**需要权限**:ohos.permission.MANAGE_INPUT_INFRARED_EMITTER
30
31**系统能力**:SystemCapability.MultimodalInput.Input. InfraredEmitter
32
33**参数**:
34
35| 参数名       | 类型                        | 必填   | 说明                                       |
36| -------- | ------------------------- | ---- | ---------------------------------------- |
37| infraredFrequency | number             | 是    | 红外频率,单位Hz。 |
38| pattern | Array&lt;number&gt; | 是    | 红外电平信号,单位是us。电平信号的数量取值范围为[0,1024]。电平信号的取值需大于0。<br/>比如[100,200,300,400]该电平信号数组,其中100us为高电平信号、200us为低电平信号、300us为高电平信号、400us为低电平信号。 |
39
40**错误码:**
41
42以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
43
44| 错误码ID | 错误信息          |
45| -------- | ----------------- |
46| 201 | Permission denied. |
47| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.2.Incorrect parameter types.3.Parameter verification failed. |
48
49**示例**:
50
51```js
52import { infraredEmitter } from '@kit.InputKit';
53
54@Entry
55@Component
56struct Index {
57  build() {
58    RelativeContainer() {
59      Text()
60        .onClick(() => {
61          try {
62            infraredEmitter.transmitInfrared(38000, [100, 200, 300, 400]);
63          } catch (error) {
64            console.error(`transmitInfrared failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
65          }
66        })
67    }
68  }
69}
70```
71
72## infraredEmitter.getInfraredFrequencies<sup>15+</sup>
73
74getInfraredFrequencies(): Array&lt;InfraredFrequency&gt;
75
76查询手机支持的红外信号的频率范围。
77
78**需要权限**:ohos.permission.MANAGE_INPUT_INFRARED_EMITTER
79
80**系统能力**:SystemCapability.MultimodalInput.Input.InfraredEmitter
81
82**返回值**:
83
84| 类型                  | 说明                  |
85| ------------------- | ------------------- |
86| Array&lt;[InfraredFrequency](#infraredfrequency15)&gt; | 频率范围,包含多组最大和最小频率。 |
87
88**错误码:**
89
90以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
91
92| 错误码ID | 错误信息          |
93| -------- | ----------------- |
94| 201 | Permission denied. |
95
96**示例**:
97
98```js
99import { infraredEmitter } from '@kit.InputKit';
100
101@Entry
102@Component
103struct Index {
104  build() {
105    RelativeContainer() {
106      Text()
107        .onClick(() => {
108          try {
109            let frequencies = infraredEmitter.getInfraredFrequencies();
110            console.log(`frequencies: ${JSON.stringify(frequencies)}`);
111          } catch (error) {
112            console.error(`Get infrared frequencies failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
113          }
114        })
115    }
116  }
117}
118```
119
120##  InfraredFrequency<sup>15+</sup>
121
122红外信号的频率范围。
123
124**系统能力**:SystemCapability.MultimodalInput.Input.InfraredEmitter
125
126| 名称                               | 类型 | 必填   | 说明  |
127| -------------------------------- | ---- | ------ | ------ |
128| max                       | number | 是 | 最大支持频率,单位:Hz。 |
129| min                          | number | 是  | 最小支持频率,单位:Hz。 |
130