1# @ohos.bundleState (设备使用信息统计)
2
3本模块提供设备使用信息统计能力。
4
5> **说明:**
6>
7> 从API version9开始,该接口不再维护,替代接口仅向系统应用开放。
8>
9> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
10
11
12## 导入模块
13
14```js
15import bundleState from '@ohos.bundleState'
16```
17
18## bundleState.isIdleState
19
20isIdleState(bundleName: string, callback: AsyncCallback<boolean>): void
21
22判断指定bundleName的应用当前是否是空闲状态,三方应用只能查询自身的空闲状态。系统应用支持查询其他应用的空闲状态,查询前需要申请权限ohos.permission.BUNDLE_ACTIVE_INFO。使用Callback异步回调。
23
24**系统能力**:SystemCapability.ResourceSchedule.UsageStatistics.AppGroup
25
26**参数**:
27
28| 参数名        | 类型                           | 必填   | 说明                                       |
29| ---------- | ---------------------------- | ---- | ---------------------------------------- |
30| bundleName | string                       | 是    | 应用的bundleName。                           |
31| callback   | AsyncCallback<boolean> | 是    | 指定的callback回调方法。如果指定的bundleName有效,则返回指定bundleName的应用当前是否是空闲状态;否则返回null。 |
32
33**示例**:
34
35```ts
36import { BusinessError } from '@ohos.base';
37// 三方应用使用示例代码时,注意将bundleName更换为自己应用的bundleName
38bundleState.isIdleState("com.ohos.camera", (err: BusinessError, res: boolean) => {
39  if (err) {
40    console.error('BUNDLE_ACTIVE isIdleState callback failed, because: ' + err.code);
41  } else {
42    console.log('BUNDLE_ACTIVE isIdleState callback succeeded, result: ' + JSON.stringify(res));
43  }
44});
45```
46
47## bundleState.isIdleState
48
49isIdleState(bundleName: string): Promise<boolean>
50
51判断指定bundleName的应用当前是否是空闲状态,三方应用只能查询自身的空闲状态。系统应用支持查询其他应用的空闲状态,查询前需要申请权限ohos.permission.BUNDLE_ACTIVE_INFO,使用Promise异步回调。
52
53**系统能力**:SystemCapability.ResourceSchedule.UsageStatistics.AppGroup
54
55**参数**:
56
57| 参数名        | 类型     | 必填   | 说明             |
58| ---------- | ------ | ---- | -------------- |
59| bundleName | string | 是    | 应用的bundleName。 |
60
61**返回值**:
62
63| 类型                     | 说明                                       |
64| ---------------------- | ---------------------------------------- |
65| Promise<boolean> | 指定的Promise回调方法。如果指定的bundleName有效,则返回指定bundleName的应用当前是否是空闲状态;否则返回null。 |
66
67**示例**:
68
69```ts
70import { BusinessError } from '@ohos.base';
71// 三方应用使用示例代码时,注意将bundleName更换为自己应用的bundleName
72bundleState.isIdleState("com.ohos.camera").then((res: boolean) => {
73  console.log('BUNDLE_ACTIVE isIdleState promise succeeded, result: ' + JSON.stringify(res));
74}).catch((err: BusinessError) => {
75  console.error('BUNDLE_ACTIVE isIdleState promise failed, because: ' + err.code);
76});
77```