ApplicationStateObserver
The module defines an observer to listen for application state changes. It can be used as an input parameter in on('applicationState') to listen for lifecycle changes of the application.
NOTE
The initial APIs of this module are supported since API version 14. Newly added APIs will be marked with a superscript to indicate their earliest API version.
Modules to Import
import { appManager } from '@kit.AbilityKit';
ApplicationStateObserver.onForegroundApplicationChanged
onForegroundApplicationChanged(appStateData: AppStateData): void
Called when the foreground or background state of an application changes.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| appStateData | AppStateData | Yes | Application state data. |
ApplicationStateObserver.onAbilityStateChanged
onAbilityStateChanged(abilityStateData: AbilityStateData): void
Called when the ability state changes.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| abilityStateData | AbilityStateData | Yes | Ability state data. |
ApplicationStateObserver.onProcessCreated
onProcessCreated(processData: ProcessData): void
Called when a process is created.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| processData | ProcessData | Yes | Process data. |
ApplicationStateObserver.onProcessDied
onProcessDied(processData: ProcessData): void
Called when a process is destroyed.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| processData | ProcessData | Yes | Process data. |
ApplicationStateObserver.onProcessStateChanged
onProcessStateChanged(processData: ProcessData): void
Called when the process state is changed.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| processData | ProcessData | Yes | Process data. |
ApplicationStateObserver.onAppStarted
onAppStarted(appStateData: AppStateData): void
Called when the first process of the application is created.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| appStateData | AppStateData | Yes | Application state data. |
ApplicationStateObserver.onAppStopped
onAppStopped(appStateData: AppStateData): void
Called when the last process of the application is destroyed.
System capability: SystemCapability.Ability.AbilityRuntime.Core
Parameters
| Name | Type | Mandatory | Description |
|---|---|---|---|
| appStateData | AppStateData | Yes | Application state data. |
ProcessData
type ProcessData = _ProcessData.default
Defines the process data.
System capability: SystemCapability.Ability.AbilityRuntime.Core
| Type | Description |
|---|---|
| _ProcessData.default | Process data. |
Example
import { appManager } from '@kit.AbilityKit';
let applicationStateObserver: appManager.ApplicationStateObserver = {
onForegroundApplicationChanged(appStateData) {
console.info(`onForegroundApplicationChanged, appStateData: ${JSON.stringify(appStateData)}.`);
},
onAbilityStateChanged(abilityStateData) {
console.info(`onAbilityStateChanged, abilityStateData: ${JSON.stringify(abilityStateData)}.`);
},
onProcessCreated(processData) {
console.info(`onProcessCreated, processData: ${JSON.stringify(processData)}.`);
},
onProcessDied(processData) {
console.info(`onProcessDied, processData: ${JSON.stringify(processData)}.`);
},
onProcessStateChanged(processData) {
console.info(`onProcessStateChanged, processData: ${JSON.stringify(processData)}.`);
},
onAppStarted(appStateData) {
console.info(`onAppStarted, appStateData: ${JSON.stringify(appStateData)}.`);
},
onAppStopped(appStateData) {
console.info(`onAppStopped, appStateData: ${JSON.stringify(appStateData)}.`);
}
};
let observerCode = appManager.on('applicationState', applicationStateObserver);