• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 用户状态感知开发指导
2<!--Kit: Multimodal Awareness Kit-->
3<!--Subsystem: MultimodalAwareness-->
4<!--Owner: @dilligencer-->
5<!--Designer: @zou_ye-->
6<!--Tester: @judan-->
7<!--Adviser: @hu-zhiqiong-->
8
9UserStatus(用户状态感知)模块提供用户感知能力,可以感知到操作者特定状态,例如:检测用户年龄组。
10
11详细的接口介绍请参考[userStatus接口](../../reference/apis-multimodalawareness-kit/js-apis-awareness-userStatus.md)。
12
13## 感知用户年龄组开发指导
14### 场景介绍
15当应用需要获取用户年龄分类时,可以调用userStatus模块,例如判断设备具体操作者是儿童还是成年人。
16
17### 接口说明
18
19| 接口名                                                       | 描述                                   |
20| ------------------------------------------------------------ | -------------------------------------- |
21| on(type:'userAgeGroupDetected',callback:Callback&lt;UserClassification&gt;):void; | 订阅年龄群组检测功能,检测结果通过callback返回。 |
22| off(type: 'userAgeGroupDetected', callback?: Callback&lt;UserClassification&gt;): void; | 取消年龄群组检测功能。                   |
23
24### 约束与限制
25
26 - 此功能如果设备不支持,将返回801错误码。
27
28### 开发步骤
29
301. 导入模块。
31
32   ```ts
33   import { userStatus } from '@kit.MultimodalAwarenessKit';
34   import { BusinessError } from '@kit.BasicServicesKit';
35   import { Callback } from '@ohos.base';
36   ```
37
382. 定义回调,函数接受年龄群组检测结果。
39
40   ```
41   let callback : Callback<userStatus.UserClassification> = (data : userStatus.UserClassification) => {
42     console.info('callback succeeded, ageGroup:' + data.ageGroup + ", confidence:" + data.confidence);
43   };
44   ```
45
463. 订阅年龄群组检测功能。
47
48   ```
49   try {
50      userStatus.on('userAgeGroupDetected', callback);
51      console.info("on succeeded");
52   } catch (err) {
53      let error = err as BusinessError;
54      console.error("Failed on and err code is " + error.code);
55   }
56   ```
57
584. 取消订阅年龄群组检测功能。
59
60   ```
61   try {
62      userStatus.off('userAgeGroupDetected');
63      console.info("off succeeded");
64   } catch (err) {
65      let error = err as BusinessError;
66      console.error("Failed off and err code is " + error.code);
67   }
68   ```
69