1# ApplicationStateObserver 2 3定义应用状态监听,可以作为[on](js-apis-app-ability-appManager.md#appmanageronapplicationstate)的入参监听当前应用的生命周期变化。 4 5> **说明:** 6> 7> 本模块首批接口从API version 14开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 导入模块 10 11```ts 12import { appManager } from '@kit.AbilityKit'; 13``` 14 15## ApplicationStateObserver.onForegroundApplicationChanged 16 17onForegroundApplicationChanged(appStateData: AppStateData): void 18 19应用前后台状态发生变化时执行的回调函数。 20 21**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 22 23**参数**: 24 25| 参数名 | 类型 | 必填 | 说明 | 26| -------- | -------- | -------- | -------- | 27| appStateData | [AppStateData](js-apis-inner-application-appStateData.md) | 是 | 应用状态信息。 | 28 29## ApplicationStateObserver.onAbilityStateChanged 30 31onAbilityStateChanged(abilityStateData: AbilityStateData): void 32 33ability状态发生变化时执行的回调函数。 34 35**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 36 37**参数**: 38 39| 参数名 | 类型 | 必填 | 说明 | 40| -------- | -------- | -------- | -------- | 41| abilityStateData | [AbilityStateData](js-apis-inner-application-abilityStateData.md) | 是 | Ability状态信息。 | 42 43## ApplicationStateObserver.onProcessCreated 44 45onProcessCreated(processData: ProcessData): void 46 47进程创建时执行的回调函数。 48 49**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 50 51**参数**: 52 53| 参数名 | 类型 | 必填 | 说明 | 54| -------- | -------- | -------- | -------- | 55| processData | [ProcessData](js-apis-inner-application-processData.md) | 是 | 进程数据信息。 | 56 57## ApplicationStateObserver.onProcessDied 58 59onProcessDied(processData: ProcessData): void 60 61进程销毁时执行的回调函数。 62 63**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 64 65**参数**: 66 67| 参数名 | 类型 | 必填 | 说明 | 68| -------- | -------- | -------- | -------- | 69| processData | [ProcessData](js-apis-inner-application-processData.md) | 是 | 进程数据信息。 | 70 71## ApplicationStateObserver.onProcessStateChanged 72 73onProcessStateChanged(processData: ProcessData): void 74 75进程状态更新时执行的回调函数。 76 77**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 78 79**参数**: 80 81| 参数名 | 类型 | 必填 | 说明 | 82| -------- | -------- | -------- | -------- | 83| processData | [ProcessData](js-apis-inner-application-processData.md) | 是 | 进程数据信息。 | 84 85## ApplicationStateObserver.onAppStarted 86 87onAppStarted(appStateData: AppStateData): void 88 89应用第一个进程创建时执行的回调函数。 90 91**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 92 93**参数**: 94 95| 参数名 | 类型 | 必填 | 说明 | 96| -------- | -------- | -------- | -------- | 97| appStateData | [AppStateData](js-apis-inner-application-appStateData.md) | 是 | 应用状态信息。 | 98 99## ApplicationStateObserver.onAppStopped 100 101onAppStopped(appStateData: AppStateData): void 102 103应用最后一个进程销毁时执行的回调函数。 104 105**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 106 107**参数**: 108 109| 参数名 | 类型 | 必填 | 说明 | 110| -------- | -------- | -------- | -------- | 111| appStateData | [AppStateData](js-apis-inner-application-appStateData.md) | 是 | 应用状态信息。 | 112 113## ProcessData 114 115type ProcessData = _ProcessData.default 116 117进程数据信息。 118 119**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 120 121| 类型 | 说明 | 122| --- | --- | 123| [_ProcessData.default](js-apis-inner-application-processData.md) | 进程数据信息。 | 124 125**示例:** 126```ts 127import { appManager } from '@kit.AbilityKit'; 128 129let applicationStateObserver: appManager.ApplicationStateObserver = { 130 onForegroundApplicationChanged(appStateData) { 131 console.log(`onForegroundApplicationChanged appStateData: ${JSON.stringify(appStateData)}`); 132 }, 133 onAbilityStateChanged(abilityStateData) { 134 console.log(`onAbilityStateChanged onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`); 135 }, 136 onProcessCreated(processData) { 137 console.log(`onProcessCreated onProcessCreated: ${JSON.stringify(processData)}`); 138 }, 139 onProcessDied(processData) { 140 console.log(`onProcessDied onProcessDied: ${JSON.stringify(processData)}`); 141 }, 142 onProcessStateChanged(processData) { 143 console.log(`onProcessStateChanged onProcessStateChanged: ${JSON.stringify(processData)}`); 144 }, 145 onAppStarted(appStateData) { 146 console.log(`onAppStarted appStateData: ${JSON.stringify(appStateData)}`); 147 }, 148 onAppStopped(appStateData) { 149 console.log(`onAppStopped appStateData: ${JSON.stringify(appStateData)}`); 150 } 151}; 152let observerCode = appManager.on('applicationState', applicationStateObserver); 153```