• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.multimodalAwareness.deviceStatus(设备状态感知)
2
3本模块,提供对设备状态的感知能力。
4
5> **说明:**
6>
7> 本模块首批接口从API version 18开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11  ```ts
12  import { deviceStatus } from '@kit.MultimodalAwarenessKit';
13  ```
14
15## SteadyStandingStatus
16
17设备静止姿态感知状态(支架态)。
18
19设备进入支架态指设备静止,且屏幕与水平面角度处于45度-135度。折叠屏手机需处于折叠状态或者完全展开状态。
20
21**系统能力**:SystemCapability.MultimodalAwareness.DeviceStatus
22
23| 名称                | 值   | 说明                   |
24| ------------------- | ---- | ---------------------- |
25| STATUS_EXIT  | 0    | 表示设备退出支架态。 |
26| STATUS_ENTER | 1    | 表示设备进入支架态。 |
27
28## deviceStatus.on('steadyStandingDetect')
29
30 on(type: 'steadyStandingDetect', callback: Callback<SteadyStandingStatus>): void;
31
32订阅设备静止姿态感知(支架态)事件。
33
34**系统能力**:SystemCapability.MultimodalAwareness.DeviceStatus
35
36**参数**:
37
38| 参数名   | 类型                             | 必填 | 说明                                                         |
39| -------- | -------------------------------- | ---- | ------------------------------------------------------------ |
40| type     | string                           | 是   | 事件类型。type为“steadyStandingDetect”,表示设备静止姿态(支架态)感知。 |
41| callback | Callback<[SteadyStandingStatus](#steadystandingstatus)> | 是   | 回调函数,返回设备静止姿态感知(支架态)状态信息。|
42
43**错误码**:
44
45以下错误码的详细介绍请参见[设备状态感知错误码](errorcode-deviceStatus.md)和[通用错误码](../errorcode-universal.md)。
46
47| 错误码ID | 错误信息                                                     |
48| -------- | ------------------------------------------------------------ |
49| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed. |
50| 801      | Capability not supported. Function can not work correctly due to limited device capabilities. |
51| 32500001 | Service exception. |
52| 32500002 | Subscribe Failed. |
53
54**示例**:
55
56  ```ts
57  try {
58    deviceStatus.on('steadyStandingDetect', (data:deviceStatus.SteadyStandingStatus) => {
59      console.info('now status = ' + data);
60    });
61  } catch (err) {
62    console.info('on failed, err = ' + err);
63  }
64  ```
65
66## deviceStatus.off('steadyStandingDetect')
67
68off(type: 'steadyStandingDetect', callback?: Callback<SteadyStandingStatus>): void;
69
70取消订阅设备静止姿态感知(支架态)事件。
71
72**系统能力**:SystemCapability.MultimodalAwareness.DeviceStatus
73
74**参数**:
75
76| 参数名   | 类型                             | 必填 | 说明                                                         |
77| -------- | -------------------------------- | ---- | ------------------------------------------------------------ |
78| type     | string                           | 是   | 事件类型。type为“steadyStandingDetect”,表示设备静止姿态(支架态)感知。 |
79| callback | Callback<[SteadyStandingStatus](#steadystandingstatus)> | 是   | 回调函数,返回设备静止姿态感知(支架态)状态信息。|
80
81**错误码**:
82
83以下错误码的详细介绍请参见[设备状态感知错误码](errorcode-deviceStatus.md)和[通用错误码](../errorcode-universal.md)。
84
85| 错误码ID | 错误信息                                                     |
86| -------- | ------------------------------------------------------------ |
87| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed. |
88| 801      | Capability not supported. Function can not work correctly due to limited device capabilities. |
89| 32500001 | Service exception. |
90| 32500003 | Unsubscribe Failed. |
91
92**示例**:
93
94示例一:取消订阅该客户端订阅设备静止姿态感知(支架态)事件的所有回调。
95
96  ```ts
97  try {
98    deviceStatus.off('steadyStandingDetect');
99  } catch (err) {
100    console.info('off failed, err = ' + err);
101  }
102  ```
103
104示例二:取消订阅该客户端订阅设备静止姿态感知(支架态)事件的特定回调。
105
106  ```ts
107  import { Callback } from '@ohos.base';
108  // 定义callback变量
109  let callback : Callback<deviceStatus.SteadyStandingStatus> = (data : deviceStatus.SteadyStandingStatus) => {
110    console.info('now status = ' + data);
111  };
112  // 以callback为回调函数,订阅设备静止姿态感知(支架态)事件
113  try {
114    deviceStatus.on('steadyStandingDetect', callback);
115  } catch (err) {
116    console.info('on failed, err = ' + err);
117  }
118  // 取消该客户端订阅设备静止姿态感知(支架态)事件的特定回调函数
119  try {
120    deviceStatus.off('steadyStandingDetect', callback);
121  } catch (err) {
122    console.info('off failed, err = ' + err);
123  }
124  ```