• 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**需要权限**:ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS, ohos.permission.CLEAN_BACKGROUND_PROCESSES
393
394**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
395
396**系统API**: 此接口为系统接口,三方应用不支持调用。
397
398**参数:**
399
400  | 参数名 | 类型 | 必填 | 说明 |
401  | -------- | -------- | -------- | -------- |
402  | bundleName | string | 是 | 应用包名。 |
403  | accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 |
404
405**示例:**
406
407```ts
408let bundleName = 'bundleName';
409let accountId = 0;
410app.killProcessWithAccount(bundleName, accountId)
411   .then((data) => {
412       console.log('------------ killProcessWithAccount success ------------', data);
413   })
414   .catch((err) => {
415       console.log('------------ killProcessWithAccount fail ------------', err);
416   });
417```
418
419
420## appManager.killProcessWithAccount<sup>8+</sup>
421
422killProcessWithAccount(bundleName: string, accountId: number, callback: AsyncCallback\<void\>): void
423
424切断account进程(callback形式)。
425
426**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
427
428**系统API**: 此接口为系统接口,三方应用不支持调用。
429
430**需要权限**:ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS, ohos.permission.CLEAN_BACKGROUND_PROCESSES
431
432**参数:**
433
434  | 参数名 | 类型 | 必填 | 说明 |
435  | -------- | -------- | -------- | -------- |
436  | bundleName | string | 是 | 应用包名。 |
437  | accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 |
438  | callback | AsyncCallback\<void\> | 是 | 切断account进程的回调函数。 |
439
440**示例:**
441
442```ts
443let bundleName = 'bundleName';
444let accountId = 0;
445function killProcessWithAccountCallback(err, data) {
446   if (err) {
447       console.log('------------- killProcessWithAccountCallback fail, err: --------------', err);
448   } else {
449       console.log('------------- killProcessWithAccountCallback success, data: --------------', data);
450   }
451}
452app.killProcessWithAccount(bundleName, accountId, killProcessWithAccountCallback);
453```
454
455## appManager.killProcessesByBundleName<sup>8+</sup>
456
457killProcessesByBundleName(bundleName: string, callback: AsyncCallback\<void>);
458
459通过包名终止进程。
460
461**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES
462
463**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
464
465**系统API**:该接口为系统接口,三方应用不支持调用。
466
467**参数:**
468
469| 参数名 | 类型 | 必填 | 说明 |
470| -------- | -------- | -------- | -------- |
471| bundleName | string | 是 | 表示包名。 |
472| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法。 |
473
474**示例:**
475
476  ```ts
477  let bundleName = 'bundleName';
478  function killProcessesByBundleNameCallback(err, data) {
479    if (err) {
480        console.log('------------- killProcessesByBundleNameCallback fail, err: --------------', err);
481    } else {
482        console.log('------------- killProcessesByBundleNameCallback success, data: --------------', data);
483    }
484  }
485  app.killProcessesByBundleName(bundleName, killProcessesByBundleNameCallback);
486  ```
487
488## appManager.killProcessesByBundleName<sup>8+</sup>
489
490killProcessesByBundleName(bundleName: string): Promise\<void>;
491
492通过包名终止进程。
493
494**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES
495
496**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
497
498**系统API**:该接口为系统接口,三方应用不支持调用。
499
500**参数:**
501
502| 参数名 | 类型 | 必填 | 说明 |
503| -------- | -------- | -------- | -------- |
504| bundleName | string | 是 | 表示包名。 |
505
506**返回值:**
507
508| 类型 | 说明 |
509| -------- | -------- |
510| Promise\<void> | 返回执行结果。 |
511
512**示例:**
513
514  ```ts
515  let bundleName = 'bundleName';
516  app.killProcessesByBundleName(bundleName)
517    .then((data) => {
518        console.log('------------ killProcessesByBundleName success ------------', data);
519    })
520    .catch((err) => {
521        console.log('------------ killProcessesByBundleName fail ------------', err);
522    });
523  ```
524
525## appManager.clearUpApplicationData<sup>8+</sup>
526
527clearUpApplicationData(bundleName: string, callback: AsyncCallback\<void>);
528
529通过包名清除应用数据。
530
531**需要权限**:ohos.permission.CLEAN_APPLICATION_DATA
532
533**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
534
535**系统API**:该接口为系统接口,三方应用不支持调用。
536
537**参数:**
538
539| 参数名 | 类型 | 必填 | 说明 |
540| -------- | -------- | -------- | -------- |
541| bundleName | string | 是 | 表示包名。 |
542| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法。 |
543
544**示例:**
545
546  ```ts
547  let bundleName = 'bundleName';
548  function clearUpApplicationDataCallback(err, data) {
549    if (err) {
550        console.log('------------- clearUpApplicationDataCallback fail, err: --------------', err);
551    } else {
552        console.log('------------- clearUpApplicationDataCallback success, data: --------------', data);
553    }
554  }
555  app.clearUpApplicationData(bundleName, clearUpApplicationDataCallback);
556  ```
557
558## appManager.clearUpApplicationData<sup>8+</sup>
559
560clearUpApplicationData(bundleName: string): Promise\<void>;
561
562通过包名清除应用数据。
563
564**需要权限**:ohos.permission.CLEAN_APPLICATION_DATA
565
566**系统能力**:SystemCapability.Ability.AbilityRuntime.Core
567
568**系统API**:该接口为系统接口,三方应用不支持调用。
569
570**参数:**
571
572| 参数名 | 类型 | 必填 | 说明 |
573| -------- | -------- | -------- | -------- |
574| bundleName | string | 是 | 表示包名。 |
575
576**返回值:**
577
578| 类型 | 说明 |
579| -------- | -------- |
580| Promise\<void> | 返回执行结果。 |
581
582**示例:**
583
584  ```ts
585  let bundleName = 'bundleName';
586  app.clearUpApplicationData(bundleName)
587    .then((data) => {
588        console.log('------------ clearUpApplicationData success ------------', data);
589    })
590    .catch((err) => {
591        console.log('------------ clearUpApplicationData fail ------------', err);
592    });
593  ```