• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ApplicationStateObserver
2
3The ApplicationStateObserver module defines an observer to listen for application state changes. It can be used as an input parameter in [on](js-apis-app-ability-appManager.md#appmanageronapplicationstate) to listen for lifecycle changes of the current application.
4
5> **NOTE**
6>
7> 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.
8
9## Modules to Import
10
11```ts
12import { appManager } from '@kit.AbilityKit';
13```
14
15## ApplicationStateObserver.onForegroundApplicationChanged
16
17onForegroundApplicationChanged(appStateData: AppStateData): void
18
19Called when the foreground or background state of an application changes.
20
21**System capability**: SystemCapability.Ability.AbilityRuntime.Core
22
23**Parameters**
24
25| Name| Type| Mandatory| Description|
26| -------- | -------- | -------- | -------- |
27| appStateData | [AppStateData](js-apis-inner-application-appStateData.md) | Yes| Application state data.|
28
29## ApplicationStateObserver.onAbilityStateChanged
30
31onAbilityStateChanged(abilityStateData: AbilityStateData): void
32
33Called when the ability state changes.
34
35**System capability**: SystemCapability.Ability.AbilityRuntime.Core
36
37**Parameters**
38
39| Name| Type| Mandatory| Description|
40| -------- | -------- | -------- | -------- |
41| abilityStateData | [AbilityStateData](js-apis-inner-application-abilityStateData.md) | Yes| Ability state data.|
42
43## ApplicationStateObserver.onProcessCreated
44
45onProcessCreated(processData: ProcessData): void
46
47Called when a process is created.
48
49**System capability**: SystemCapability.Ability.AbilityRuntime.Core
50
51**Parameters**
52
53| Name| Type| Mandatory| Description|
54| -------- | -------- | -------- | -------- |
55| processData | [ProcessData](js-apis-inner-application-processData.md) | Yes| Process data.|
56
57## ApplicationStateObserver.onProcessDied
58
59onProcessDied(processData: ProcessData): void
60
61Called when a process is destroyed.
62
63**System capability**: SystemCapability.Ability.AbilityRuntime.Core
64
65**Parameters**
66
67| Name| Type| Mandatory| Description|
68| -------- | -------- | -------- | -------- |
69| processData | [ProcessData](js-apis-inner-application-processData.md) | Yes| Process data.|
70
71## ApplicationStateObserver.onProcessStateChanged
72
73onProcessStateChanged(processData: ProcessData): void
74
75Called when the process state is changed.
76
77**System capability**: SystemCapability.Ability.AbilityRuntime.Core
78
79**Parameters**
80
81| Name| Type| Mandatory| Description|
82| -------- | -------- | -------- | -------- |
83| processData | [ProcessData](js-apis-inner-application-processData.md) | Yes| Process data.|
84
85## ApplicationStateObserver.onAppStarted
86
87onAppStarted(appStateData: AppStateData): void
88
89Called when the first process of the application is created.
90
91**System capability**: SystemCapability.Ability.AbilityRuntime.Core
92
93**Parameters**
94
95| Name| Type| Mandatory| Description|
96| -------- | -------- | -------- | -------- |
97| appStateData | [AppStateData](js-apis-inner-application-appStateData.md) | Yes| Application state data.|
98
99## ApplicationStateObserver.onAppStopped
100
101onAppStopped(appStateData: AppStateData): void
102
103Called when the last process of the application is destroyed.
104
105**System capability**: SystemCapability.Ability.AbilityRuntime.Core
106
107**Parameters**
108
109| Name| Type| Mandatory| Description|
110| -------- | -------- | -------- | -------- |
111| appStateData | [AppStateData](js-apis-inner-application-appStateData.md) | Yes| Application state data.|
112
113## ProcessData
114
115type ProcessData = _ProcessData.default
116
117Defines the process data.
118
119**System capability**: SystemCapability.Ability.AbilityRuntime.Core
120
121| Type| Description|
122| --- | --- |
123| [_ProcessData.default](js-apis-inner-application-processData.md) | Process data.|
124
125**Example**
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```
154