• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ProcessData
2
3进程数据的对象定义。使用接口[registerApplicationStateObserver](js-apis-application-appManager.md#appmanagerregisterapplicationstateobserver8)注册生命周期变化监听后,当应用或组件的生命周期变化时,系统通过[ApplicationStateObserver](js-apis-inner-application-applicationStateObserver.md)的onProcessCreated等方法回调给开发者。
4
5> **说明:**
6>
7> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import appManager from '@ohos.application.appManager';
13```
14
15## 属性
16
17**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
18
19**系统API**:该接口为系统接口,三方应用不支持调用。
20
21| 名称                     | 类型     | 可读 | 可写 | 说明                       |
22| ----------------------- | ---------| ---- | ---- | ------------------------- |
23| pid         | number   | 是   | 否   | 进程ID。                    |
24| bundleName  | string   | 是   | 否  | 应用包名。                  |
25| uid         | number   | 是   | 否   | 应用的uid。                  |
26| isContinuousTask<sup>9+</sup>         | boolean   | 是   | 否   | 是否为长时任务,true表示是,false表示不是                 |
27| isKeepAlive<sup>9+</sup>         | boolean   | 是   | 否   | 是否为常驻进程,true表示是,false表示不是                   |
28| state<sup>9+</sup>       | number   | 是   | 否   | 应用的状态,取值及对应的状态为:<br>0 - 刚创建,<br>1 - 准备就绪,<br>2 - 前台,<br>4 - 后台,<br>5 - 已终止。     |
29
30**示例:**
31```ts
32import appManager from '@ohos.application.appManager';
33
34let observerCode = appManager.registerApplicationStateObserver({
35    onForegroundApplicationChanged(appStateData) {
36        console.log(`onForegroundApplicationChanged appStateData: ${JSON.stringify(appStateData)}`);
37    },
38    onAbilityStateChanged(abilityStateData) {
39        console.log(`onAbilityStateChanged onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`);
40    },
41    onProcessCreated(processData) {
42        console.log(`onProcessCreated onProcessCreated: ${JSON.stringify(processData)}`);
43    },
44    onProcessDied(processData) {
45        console.log(`onProcessDied onProcessDied: ${JSON.stringify(processData)}`);
46    },
47    onProcessStateChanged(processData) {
48        console.log(`onProcessStateChanged processData.pid : ${JSON.stringify(processData.pid)}`);
49        console.log(`onProcessStateChanged processData.bundleName : ${JSON.stringify(processData.bundleName)}`);
50        console.log(`onProcessStateChanged processData.uid : ${JSON.stringify(processData.uid)}`);
51        console.log(`onProcessStateChanged processData.isContinuousTask : ${JSON.stringify(processData.isContinuousTask)}`);
52        console.log(`onProcessStateChanged processData.isKeepAlive : ${JSON.stringify(processData.isKeepAlive)}`);
53    }
54});
55```