• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.application.appManager (appManager)
2
3appManager模块提供App管理的能力,包括查询当前是否处于稳定性测试场景、查询是否为ram受限设备、获取应用程序的内存大小、获取有关运行进程的信息等。
4
5> **说明:**
6>
7> 本模块首批接口从API version 7 开始支持,从API version 9废弃,替换模块为[@ohos.app.ability.appManager](js-apis-app-ability-appManager.md)。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import app from '@ohos.application.appManager';
13```
14
15## appManager.isRunningInStabilityTest<sup>8+</sup>
16
17static isRunningInStabilityTest(callback: AsyncCallback&lt;boolean&gt;): void
18
19查询当前是否处于稳定性测试场景。
20
21**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
22
23**参数:**
24
25  | 参数名 | 类型 | 必填 | 说明 |
26  | -------- | -------- | -------- | -------- |
27  | callback | AsyncCallback&lt;boolean&gt; | 是 | 返回当前是否处于稳定性测试场景。 |
28
29**示例:**
30
31  ```ts
32  import app from '@ohos.application.appManager';
33  app.isRunningInStabilityTest((err, flag) => {
34      console.log('startAbility result:' + JSON.stringify(err));
35  });
36  ```
37
38
39## appManager.isRunningInStabilityTest<sup>8+</sup>
40
41static isRunningInStabilityTest(): Promise&lt;boolean&gt;
42
43查询当前是否处于稳定性测试场景。
44
45**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
46
47**返回值:**
48
49  | 类型 | 说明 |
50  | -------- | -------- |
51  | Promise&lt;boolean&gt; | 返回当前是否处于稳定性测试场景。 |
52
53**示例:**
54
55  ```ts
56  import app from '@ohos.application.appManager';
57  app.isRunningInStabilityTest().then((flag) => {
58      console.log('success:' + JSON.stringify(flag));
59  }).catch((error) => {
60      console.log('failed:' + JSON.stringify(error));
61  });
62  ```
63
64
65## appManager.isRamConstrainedDevice
66
67isRamConstrainedDevice(): Promise\<boolean>;
68
69查询是否为ram受限设备。
70
71**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
72
73**返回值:**
74
75  | 类型 | 说明 |
76  | -------- | -------- |
77  | Promise&lt;boolean&gt; | 是否为ram受限设备。 |
78
79**示例:**
80
81  ```ts
82  app.isRamConstrainedDevice().then((data) => {
83      console.log('success:' + JSON.stringify(data));
84  }).catch((error) => {
85      console.log('failed:' + JSON.stringify(error));
86  });
87  ```
88
89## appManager.isRamConstrainedDevice
90
91isRamConstrainedDevice(callback: AsyncCallback\<boolean>): void;
92
93查询是否为ram受限设备。
94
95**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
96
97**参数:**
98
99  | 参数名 | 类型 | 必填 | 说明 |
100  | -------- | -------- | -------- | -------- |
101  | callback | AsyncCallback&lt;boolean&gt; | 是 | 返回当前是否是ram受限设备。 |
102
103**示例:**
104
105  ```ts
106  app.isRamConstrainedDevice((err, data) => {
107      console.log('startAbility result failed:' + JSON.stringify(err));
108      console.log('startAbility result success:' + JSON.stringify(data));
109  });
110  ```
111
112## appManager.getAppMemorySize
113
114getAppMemorySize(): Promise\<number>;
115
116获取应用程序的内存大小。
117
118**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
119
120**返回值:**
121
122  | 类型 | 说明 |
123  | -------- | -------- |
124  | Promise&lt;number&gt; | 应用程序内存大小, 单位为M。 |
125
126**示例:**
127
128  ```ts
129  app.getAppMemorySize().then((data) => {
130      console.log('success:' + JSON.stringify(data));
131  }).catch((error) => {
132      console.log('failed:' + JSON.stringify(error));
133  });
134  ```
135
136## appManager.getAppMemorySize
137
138getAppMemorySize(callback: AsyncCallback\<number>): void;
139
140获取应用程序的内存大小。
141
142**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
143
144**参数:**
145
146  | 参数名 | 类型 | 必填 | 说明 |
147  | -------- | -------- | -------- | -------- |
148  | callback | AsyncCallback&lt;number&gt; | 是 | 应用程序内存大小, 单位为M。 |
149
150**示例:**
151
152  ```ts
153  app.getAppMemorySize((err, data) => {
154      console.log('startAbility result failed :' + JSON.stringify(err));
155      console.log('startAbility result success:' + JSON.stringify(data));
156  });
157  ```
158## appManager.getProcessRunningInfos<sup>(deprecated)</sup>
159
160getProcessRunningInfos(): Promise\<Array\<ProcessRunningInfo>>;
161
162获取有关运行进程的信息。
163
164> 从 API Version 9 开始废弃,建议使用[appManager.getRunningProcessInformation<sup>9+</sup>](js-apis-app-ability-appManager.md#appmanagergetrunningprocessinformation)替代。
165
166**需要权限**:ohos.permission.GET_RUNNING_INFO
167
168**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
169
170**返回值:**
171
172| 类型 | 说明 |
173| -------- | -------- |
174| Promise\<Array\<[ProcessRunningInfo](js-apis-inner-application-processRunningInfo.md)>> | 获取有关运行进程的信息。 |
175
176**示例:**
177
178  ```ts
179  app.getProcessRunningInfos().then((data) => {
180      console.log('success:' + JSON.stringify(data));
181  }).catch((error) => {
182      console.log('failed:' + JSON.stringify(error));
183  });
184  ```
185
186## appManager.getProcessRunningInfos<sup>(deprecated)</sup>
187
188getProcessRunningInfos(callback: AsyncCallback\<Array\<ProcessRunningInfo>>): void;
189
190获取有关运行进程的信息。
191
192> 从 API Version 9 开始废弃,建议使用[appManager.getRunningProcessInformation<sup>9+</sup>](js-apis-app-ability-appManager.md#appmanagergetrunningprocessinformation9)替代。
193
194**需要权限**:ohos.permission.GET_RUNNING_INFO
195
196**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
197
198**参数:**
199
200| 参数名 | 类型 | 必填 | 说明 |
201| -------- | -------- | -------- | -------- |
202| callback | AsyncCallback\<Array\<[ProcessRunningInfo](js-apis-inner-application-processRunningInfo.md)>> | 是 | 获取有关运行进程的信息。 |
203
204**示例:**
205
206  ```ts
207  app.getProcessRunningInfos((err, data) => {
208      console.log('startAbility result failed :' + JSON.stringify(err));
209      console.log('startAbility result success:' + JSON.stringify(data));
210  });
211  ```
212
213## appManager.registerApplicationStateObserver<sup>8+</sup>
214
215registerApplicationStateObserver(observer: ApplicationStateObserver): number;
216
217注册全部应用程序状态观测器。
218
219**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER
220
221**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
222
223**系统API**:该接口为系统接口,三方应用不支持调用。
224
225**参数:**
226
227| 参数名 | 类型 | 必填 | 说明 |
228| -------- | -------- | -------- | -------- |
229| observer | [ApplicationStateObserver](js-apis-inner-application-applicationStateObserver.md) | 是 | 返回观察者的数字代码。 |
230
231**示例:**
232
233  ```ts
234  let applicationStateObserver = {
235    onForegroundApplicationChanged(appStateData) {
236        console.log('------------ onForegroundApplicationChanged -----------', appStateData);
237    },
238    onAbilityStateChanged(abilityStateData) {
239        console.log('------------ onAbilityStateChanged -----------', abilityStateData);
240    },
241    onProcessCreated(processData) {
242        console.log('------------ onProcessCreated -----------', processData);
243    },
244    onProcessDied(processData) {
245        console.log('------------ onProcessDied -----------', processData);
246    },
247    onProcessStateChanged(processData) {
248        console.log('------------ onProcessStateChanged -----------', processData);
249    }
250  };
251  const observerCode = app.registerApplicationStateObserver(applicationStateObserver);
252  console.log('-------- observerCode: ---------', observerCode);
253  ```
254
255## appManager.unregisterApplicationStateObserver<sup>8+</sup>
256
257unregisterApplicationStateObserver(observerId: number,  callback: AsyncCallback\<void>): void;
258
259取消注册应用程序状态观测器。
260
261**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER
262
263**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
264
265**系统API**:该接口为系统接口,三方应用不支持调用。
266
267**参数:**
268
269| 参数名 | 类型 | 必填 | 说明 |
270| -------- | -------- | -------- | -------- |
271| observerId | number | 是 | 表示观察者的编号代码。 |
272| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法。 |
273
274**示例:**
275
276  ```ts
277  let observerId = 100;
278
279  function unregisterApplicationStateObserverCallback(err) {
280    if (err) {
281        console.log('------------ unregisterApplicationStateObserverCallback ------------', err);
282    }
283  }
284  app.unregisterApplicationStateObserver(observerId, unregisterApplicationStateObserverCallback);
285  ```
286
287## appManager.unregisterApplicationStateObserver<sup>8+</sup>
288
289unregisterApplicationStateObserver(observerId: number): Promise\<void>;
290
291取消注册应用程序状态观测器。
292
293**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER
294
295**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
296
297**系统API**:该接口为系统接口,三方应用不支持调用。
298
299**参数:**
300
301| 参数名 | 类型 | 必填 | 说明 |
302| -------- | -------- | -------- | -------- |
303| observerId | number | 是 | 表示观察者的编号代码。 |
304
305**返回值:**
306
307| 类型 | 说明 |
308| -------- | -------- |
309| Promise\<void> | 返回执行结果。 |
310
311**示例:**
312
313  ```ts
314  let observerId = 100;
315
316  app.unregisterApplicationStateObserver(observerId)
317  .then((data) => {
318      console.log('----------- unregisterApplicationStateObserver success ----------', data);
319  })
320  .catch((err) => {
321      console.log('----------- unregisterApplicationStateObserver fail ----------', err);
322  });
323  ```
324
325## appManager.getForegroundApplications<sup>8+</sup>
326
327getForegroundApplications(callback: AsyncCallback\<Array\<AppStateData>>): void;
328
329获取所有当前处于前台的应用信息。该应用信息由[AppStateData](js-apis-inner-application-appStateData.md)定义。
330
331**需要权限**:ohos.permission.GET_RUNNING_INFO
332
333**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
334
335**系统API**:该接口为系统接口,三方应用不支持调用。
336
337**参数:**
338
339| 参数名 | 类型 | 必填 | 说明 |
340| -------- | -------- | -------- | -------- |
341| callback | AsyncCallback\<Array\<[AppStateData](js-apis-inner-application-appStateData.md)>> | 是 | callback形式返回所有当前处于前台的应用信息。 |
342
343**示例:**
344
345  ```ts
346  function getForegroundApplicationsCallback(err, data) {
347    if (err) {
348        console.log('--------- getForegroundApplicationsCallback fail ---------', err);
349    } else {
350        console.log('--------- getForegroundApplicationsCallback success ---------', data)
351    }
352  }
353  app.getForegroundApplications(getForegroundApplicationsCallback);
354  ```
355
356## appManager.getForegroundApplications<sup>8+</sup>
357
358getForegroundApplications(): Promise\<Array\<AppStateData>>;
359
360获取所有当前处于前台的应用信息。该应用信息由[AppStateData](js-apis-inner-application-appStateData.md)定义。
361
362**需要权限**:ohos.permission.GET_RUNNING_INFO
363
364**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
365
366**系统API**:该接口为系统接口,三方应用不支持调用。
367
368**返回值:**
369
370| 类型 | 说明 |
371| -------- | -------- |
372| Promise\<Array\<[AppStateData](js-apis-inner-application-appStateData.md)>> | Promise形式返回所有当前处于前台的应用信息。 |
373
374**示例:**
375
376  ```ts
377  app.getForegroundApplications()
378  .then((data) => {
379      console.log('--------- getForegroundApplications success -------', data);
380  })
381  .catch((err) => {
382      console.log('--------- getForegroundApplications fail -------', err);
383  });
384  ```
385
386## appManager.killProcessWithAccount<sup>8+</sup>
387
388killProcessWithAccount(bundleName: string, accountId: number): Promise\<void\>
389
390切断account进程(Promise形式)。
391
392> **说明:**
393>
394> 当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。
395
396**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSESohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
397
398**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
399
400**系统API**: 此接口为系统接口,三方应用不支持调用。
401
402**参数:**
403
404  | 参数名 | 类型 | 必填 | 说明 |
405  | -------- | -------- | -------- | -------- |
406  | bundleName | string | 是 | 应用包名。 |
407  | accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 |
408
409**示例:**
410
411```ts
412let bundleName = 'bundleName';
413let accountId = 0;
414app.killProcessWithAccount(bundleName, accountId)
415   .then((data) => {
416       console.log('------------ killProcessWithAccount success ------------', data);
417   })
418   .catch((err) => {
419       console.log('------------ killProcessWithAccount fail ------------', err);
420   });
421```
422
423
424## appManager.killProcessWithAccount<sup>8+</sup>
425
426killProcessWithAccount(bundleName: string, accountId: number, callback: AsyncCallback\<void\>): void
427
428切断account进程(callback形式)。
429
430> **说明:**
431>
432> 当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。
433
434**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
435
436**系统API**: 此接口为系统接口,三方应用不支持调用。
437
438**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSESohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
439
440**参数:**
441
442  | 参数名 | 类型 | 必填 | 说明 |
443  | -------- | -------- | -------- | -------- |
444  | bundleName | string | 是 | 应用包名。 |
445  | accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 |
446  | callback | AsyncCallback\<void\> | 是 | 切断account进程的回调函数。 |
447
448**示例:**
449
450```ts
451let bundleName = 'bundleName';
452let accountId = 0;
453function killProcessWithAccountCallback(err, data) {
454   if (err) {
455       console.log('------------- killProcessWithAccountCallback fail, err: --------------', err);
456   } else {
457       console.log('------------- killProcessWithAccountCallback success, data: --------------', data);
458   }
459}
460app.killProcessWithAccount(bundleName, accountId, killProcessWithAccountCallback);
461```
462
463## appManager.killProcessesByBundleName<sup>8+</sup>
464
465killProcessesByBundleName(bundleName: string, callback: AsyncCallback\<void>);
466
467通过包名终止进程。
468
469**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES
470
471**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
472
473**系统API**:该接口为系统接口,三方应用不支持调用。
474
475**参数:**
476
477| 参数名 | 类型 | 必填 | 说明 |
478| -------- | -------- | -------- | -------- |
479| bundleName | string | 是 | 表示包名。 |
480| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法。 |
481
482**示例:**
483
484  ```ts
485  let bundleName = 'bundleName';
486  function killProcessesByBundleNameCallback(err, data) {
487    if (err) {
488        console.log('------------- killProcessesByBundleNameCallback fail, err: --------------', err);
489    } else {
490        console.log('------------- killProcessesByBundleNameCallback success, data: --------------', data);
491    }
492  }
493  app.killProcessesByBundleName(bundleName, killProcessesByBundleNameCallback);
494  ```
495
496## appManager.killProcessesByBundleName<sup>8+</sup>
497
498killProcessesByBundleName(bundleName: string): Promise\<void>;
499
500通过包名终止进程。
501
502**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES
503
504**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
505
506**系统API**:该接口为系统接口,三方应用不支持调用。
507
508**参数:**
509
510| 参数名 | 类型 | 必填 | 说明 |
511| -------- | -------- | -------- | -------- |
512| bundleName | string | 是 | 表示包名。 |
513
514**返回值:**
515
516| 类型 | 说明 |
517| -------- | -------- |
518| Promise\<void> | 返回执行结果。 |
519
520**示例:**
521
522  ```ts
523  let bundleName = 'bundleName';
524  app.killProcessesByBundleName(bundleName)
525    .then((data) => {
526        console.log('------------ killProcessesByBundleName success ------------', data);
527    })
528    .catch((err) => {
529        console.log('------------ killProcessesByBundleName fail ------------', err);
530    });
531  ```
532
533## appManager.clearUpApplicationData<sup>8+</sup>
534
535clearUpApplicationData(bundleName: string, callback: AsyncCallback\<void>);
536
537通过包名清除应用数据。
538
539**需要权限**:ohos.permission.CLEAN_APPLICATION_DATA
540
541**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
542
543**系统API**:该接口为系统接口,三方应用不支持调用。
544
545**参数:**
546
547| 参数名 | 类型 | 必填 | 说明 |
548| -------- | -------- | -------- | -------- |
549| bundleName | string | 是 | 表示包名。 |
550| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法。 |
551
552**示例:**
553
554  ```ts
555  let bundleName = 'bundleName';
556  function clearUpApplicationDataCallback(err, data) {
557    if (err) {
558        console.log('------------- clearUpApplicationDataCallback fail, err: --------------', err);
559    } else {
560        console.log('------------- clearUpApplicationDataCallback success, data: --------------', data);
561    }
562  }
563  app.clearUpApplicationData(bundleName, clearUpApplicationDataCallback);
564  ```
565
566## appManager.clearUpApplicationData<sup>8+</sup>
567
568clearUpApplicationData(bundleName: string): Promise\<void>;
569
570通过包名清除应用数据。
571
572**需要权限**:ohos.permission.CLEAN_APPLICATION_DATA
573
574**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
575
576**系统API**:该接口为系统接口,三方应用不支持调用。
577
578**参数:**
579
580| 参数名 | 类型 | 必填 | 说明 |
581| -------- | -------- | -------- | -------- |
582| bundleName | string | 是 | 表示包名。 |
583
584**返回值:**
585
586| 类型 | 说明 |
587| -------- | -------- |
588| Promise\<void> | 返回执行结果。 |
589
590**示例:**
591
592  ```ts
593  let bundleName = 'bundleName';
594  app.clearUpApplicationData(bundleName)
595    .then((data) => {
596        console.log('------------ clearUpApplicationData success ------------', data);
597    })
598    .catch((err) => {
599        console.log('------------ clearUpApplicationData fail ------------', err);
600    });
601  ```