1# @ohos.app.ability.appManager (appManager)
2
3appManager模块提供App管理的能力,包括查询当前是否处于稳定性测试场景、查询是否为ram受限设备、获取应用程序的内存大小、获取有关运行进程的信息等。
4
5> **说明:**
6> 
7> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import { appManager } from '@kit.AbilityKit';
13```
14
15## ProcessState<sup>10+</sup>
16
17表示进程状态的枚举。
18
19**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
20
21**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
22
23| 名称                 | 值  | 说明                               |
24| -------------------- | --- | --------------------------------- |
25| STATE_CREATE    | 0   |    进程处于创建状态。       |
26| STATE_FOREGROUND          | 1   |    进程处于前台状态。      |
27| STATE_ACTIVE  | 2   |     进程处于获焦状态。   |
28| STATE_BACKGROUND        | 3   |    进程处于后台不可见状态。           |
29| STATE_DESTROY        | 4   |    进程处于销毁状态。         |
30
31## appManager.isRunningInStabilityTest
32
33isRunningInStabilityTest(callback: AsyncCallback&lt;boolean&gt;): void
34
35查询当前是否处于稳定性测试场景。使用callback异步回调。
36
37**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
38
39**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
40
41**参数:**
42
43  | 参数名 | 类型 | 必填 | 说明 | 
44  | -------- | -------- | -------- | -------- |
45  | callback | AsyncCallback&lt;boolean&gt; | 是 |以回调方式返回接口运行结果及当前是否处于稳定性测试场景,可进行错误处理或其他自定义处理。true: 处于稳定性测试场景,false:处于非稳定性测试场景。  | 
46
47**错误码**:
48
49以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)和[元能力子系统错误码](errorcode-ability.md)。
50
51| 错误码ID | 错误信息 |
52| ------- | -------- |
53| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
54| 16000050 | Internal error. |
55
56**示例:**
57
58```ts
59import { appManager } from '@kit.AbilityKit';
60
61appManager.isRunningInStabilityTest((err, flag) => {
62  if (err) {
63    console.error(`isRunningInStabilityTest fail, err: ${JSON.stringify(err)}`);
64  } else {
65    console.log(`The result of isRunningInStabilityTest is: ${JSON.stringify(flag)}`);
66  }
67});
68```
69
70
71## appManager.isRunningInStabilityTest
72
73isRunningInStabilityTest(): Promise&lt;boolean&gt;
74
75查询当前是否处于稳定性测试场景。使用Promise异步回调。
76
77**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
78
79**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
80
81**返回值:**
82
83  | 类型 | 说明 | 
84  | -------- | -------- |
85  | Promise&lt;boolean&gt; | 以Promise方式返回接口运行结果及当前是否处于稳定性测试场景,可进行错误处理或其他自定义处理。true: 处于稳定性测试场景,false:处于非稳定性测试场景。 | 
86
87**错误码**:
88
89以下错误码详细介绍请参考[元能力子系统错误码](errorcode-ability.md)。
90
91| 错误码ID | 错误信息 |
92| ------- | -------- |
93| 16000050 | Internal error. |
94
95**示例:**
96
97```ts
98import { appManager } from '@kit.AbilityKit';
99import { BusinessError } from '@kit.BasicServicesKit';
100
101appManager.isRunningInStabilityTest().then((flag) => {
102  console.log(`The result of isRunningInStabilityTest is: ${JSON.stringify(flag)}`);
103}).catch((error: BusinessError) => {
104  console.error(`error: ${JSON.stringify(error)}`);
105});
106```
107
108
109## appManager.isRamConstrainedDevice
110
111isRamConstrainedDevice(): Promise\<boolean>
112
113查询是否为ram受限设备。使用Promise异步回调。
114
115**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
116
117**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
118
119**返回值:**
120
121  | 类型 | 说明 | 
122  | -------- | -------- |
123  | Promise&lt;boolean&gt; | 以Promise方式返回接口运行结果及当前设备是否为ram受限设备,可进行错误处理或其他自定义处理。true:当前设备为ram受限设备,false:当前设备为非ram受限设备。 | 
124
125**错误码**:
126
127以下错误码详细介绍请参考[元能力子系统错误码](errorcode-ability.md)。
128
129| 错误码ID | 错误信息 |
130| ------- | -------- |
131| 16000050 | Internal error. |
132
133**示例:**
134
135```ts
136import { appManager } from '@kit.AbilityKit';
137import { BusinessError } from '@kit.BasicServicesKit';
138
139appManager.isRamConstrainedDevice().then((data) => {
140  console.log(`The result of isRamConstrainedDevice is: ${JSON.stringify(data)}`);
141}).catch((error: BusinessError) => {
142  console.error(`error: ${JSON.stringify(error)}`);
143});
144```
145
146## appManager.isRamConstrainedDevice
147
148isRamConstrainedDevice(callback: AsyncCallback\<boolean>): void
149
150查询是否为ram受限设备。使用callback异步回调。
151
152**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
153
154**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
155
156**参数:**
157
158  | 参数名 | 类型 | 必填 | 说明 | 
159  | -------- | -------- | -------- | -------- |
160  | callback | AsyncCallback&lt;boolean&gt; | 是 |以回调方式返回接口运行结果及当前设备是否为ram受限设备,可进行错误处理或其他自定义处理。true:当前设备为ram受限设备,false:当前设备为非ram受限设备。  | 
161
162**错误码**:
163
164以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)和[元能力子系统错误码](errorcode-ability.md)。
165
166| 错误码ID | 错误信息 |
167| ------- | -------- |
168| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
169| 16000050 | Internal error. |
170
171**示例:**
172
173```ts
174import { appManager } from '@kit.AbilityKit';
175
176appManager.isRamConstrainedDevice((err, data) => {
177  if (err) {
178    console.error(`isRamConstrainedDevice fail, err: ${JSON.stringify(err)}`);
179  } else {
180    console.log(`The result of isRamConstrainedDevice is: ${JSON.stringify(data)}`);
181  }
182});
183```
184
185## appManager.getAppMemorySize
186
187getAppMemorySize(): Promise\<number>
188
189获取当前应用程序可以使用的内存的值。使用Promise异步回调。
190
191**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
192
193**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
194
195**返回值:**
196
197  | 类型 | 说明 | 
198  | -------- | -------- |
199  | Promise&lt;number&gt; | 获取当前应用程序可以使用的内存的值,可根据此值进行错误处理或其他自定义处理,单位是M。使用Promise异步回调。| 
200
201**错误码**:
202
203以下错误码详细介绍请参考[元能力子系统错误码](errorcode-ability.md)。
204
205| 错误码ID | 错误信息 |
206| ------- | -------- |
207| 16000050 | Internal error. |
208
209**示例:**
210
211```ts
212import { appManager } from '@kit.AbilityKit';
213import { BusinessError } from '@kit.BasicServicesKit';
214
215appManager.getAppMemorySize().then((data) => {
216  console.log(`The size of app memory is: ${JSON.stringify(data)}`);
217}).catch((error: BusinessError) => {
218  console.error(`error: ${JSON.stringify(error)}`);
219});
220```
221
222## appManager.getAppMemorySize
223
224getAppMemorySize(callback: AsyncCallback\<number>): void
225
226获取当前应用程序可以使用的内存的值。使用callback异步回调。
227
228**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
229
230**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
231
232**参数:**
233
234  | 参数名 | 类型 | 必填 | 说明 | 
235  | -------- | -------- | -------- | -------- |
236  | callback | AsyncCallback&lt;number&gt; | 是 |获取当前应用程序可以使用的内存的值,可根据此值进行错误处理或其他自定义处理,单位是M。使用callback异步回调。| 
237
238**错误码**:
239
240以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)和[元能力子系统错误码](errorcode-ability.md)。
241
242| 错误码ID | 错误信息 |
243| ------- | -------- |
244| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
245| 16000050 | Internal error. |
246
247**示例:**
248
249```ts
250import { appManager } from '@kit.AbilityKit';
251
252appManager.getAppMemorySize((err, data) => {
253  if (err) {
254    console.error(`getAppMemorySize fail, err: ${JSON.stringify(err)}`);
255  } else {
256    console.log(`The size of app memory is: ${JSON.stringify(data)}`);
257  }
258});
259```
260
261## appManager.getRunningProcessInformation
262
263getRunningProcessInformation(): Promise\<Array\<ProcessInformation>>
264
265获取当前运行进程的有关信息。使用Promise异步回调。
266
267> **说明:**
268>
269> API version 11之前的版本,该接口需要申请权限ohos.permission.GET_RUNNING_INFO(该权限仅系统应用可申请)。从API version 11开始,该接口不再需要申请权限。
270
271**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
272
273**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
274
275**返回值:**
276
277| 类型 | 说明 |
278| -------- | -------- |
279| Promise\<Array\<[ProcessInformation](js-apis-inner-application-processInformation.md)>> | 以Promise方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 |
280
281**错误码**:
282
283以下错误码详细介绍请参考[元能力子系统错误码](errorcode-ability.md)。
284
285| 错误码ID | 错误信息 |
286| ------- | -------- |
287| 16000050 | Internal error. |
288
289**示例:**
290
291```ts
292import { appManager } from '@kit.AbilityKit';
293import { BusinessError } from '@kit.BasicServicesKit';
294
295appManager.getRunningProcessInformation().then((data) => {
296  console.log(`The running process information is: ${JSON.stringify(data)}`);
297}).catch((error: BusinessError) => {
298  console.error(`error: ${JSON.stringify(error)}`);
299});
300```
301
302## appManager.getRunningProcessInformation
303
304getRunningProcessInformation(callback: AsyncCallback\<Array\<ProcessInformation>>): void
305
306获取当前运行进程的有关信息。使用callback异步回调。
307
308> **说明:**
309>
310> API version 11之前的版本,该接口需要申请权限ohos.permission.GET_RUNNING_INFO(该权限仅系统应用可申请)。从API version 11开始,该接口不再需要申请权限。
311
312**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
313
314**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
315
316**参数:**
317
318  | 参数名 | 类型 | 必填 | 说明 | 
319  | -------- | -------- | -------- | -------- |
320  | callback | AsyncCallback\<Array\<[ProcessInformation](js-apis-inner-application-processInformation.md)>> | 是 |以callback方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。|
321
322**错误码**:
323
324以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)和[元能力子系统错误码](errorcode-ability.md)。
325
326| 错误码ID | 错误信息 |
327| ------- | -------- |
328| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
329| 16000050 | Internal error. |
330
331**示例:**
332
333```ts
334import { appManager } from '@kit.AbilityKit';
335
336appManager.getRunningProcessInformation((err, data) => {
337  if (err) {
338    console.error(`getRunningProcessInformation fail, err: ${JSON.stringify(err)}`);
339  } else {
340    console.log(`The running process information is: ${JSON.stringify(data)}`);
341  }
342});
343```
344