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