• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ApplicationStateObserver
2
3定义应用状态监听,可以作为[registerApplicationStateObserver](js-apis-application-appManager.md#appmanagerregisterapplicationstateobserver8)的入参监听当前应用的生命周期变化。
4
5**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
6
7**系统API**:该接口为系统接口,三方应用不支持调用。
8
9| 名称                     |                      | 类型     | 可读 | 可写 | 说明                       |
10| ----------------------- | ---------| ---- | ---- | ------------------------- | ------------------------- |
11| onForegroundApplicationChanged<sup>8+</sup>         | [AppStateData](js-apis-inner-application-appStateData.md) | AsyncCallback\<void>   | 是   | 否   | 应用前后台状态发生变化时执行的回调函数。                    |
12| onAbilityStateChanged<sup>8+</sup>  | [AbilityStateData](js-apis-inner-application-abilityStateData.md) | AsyncCallback\<void>   | 是   | 否  | ability状态发生变化时执行的回调函数。                  |
13| onProcessCreated<sup>8+</sup>         | [ProcessData](js-apis-inner-application-processData.md) | AsyncCallback\<void>   | 是   | 否   | 进程创建时执行的回调函数。                  |
14| onProcessDied<sup>8+</sup>         | [ProcessData](js-apis-inner-application-processData.md) | AsyncCallback\<void>   | 是   | 否   | 进程销毁时执行的回调函数。                  |
15| onProcessStateChanged<sup>8+</sup>         | [ProcessData](js-apis-inner-application-processData.md) | AsyncCallback\<void>   | 是   | 否   | 进程状态更新时执行的回调函数。                  |
16
17**示例:**
18```ts
19import appManager from "@ohos.application.appManager";
20
21let applicationStateObserver = {
22    onForegroundApplicationChanged(appStateData) {
23        console.log('onForegroundApplicationChanged appStateData: ' +  JSON.stringify(appStateData));
24    },
25    onAbilityStateChanged(abilityStateData) {
26        console.log('onAbilityStateChanged onAbilityStateChanged: ' +  JSON.stringify(abilityStateData));
27    },
28    onProcessCreated(processData) {
29        console.log('onProcessCreated onProcessCreated: '  +  JSON.stringify(processData));
30    },
31    onProcessDied(processData) {
32        console.log('onProcessDied onProcessDied: '  +  JSON.stringify(processData));
33    },
34    onProcessStateChanged(processData) {
35        console.log('onProcessStateChanged onProcessStateChanged: ' +  JSON.stringify(processData));
36    }
37};
38let observerCode = appManager.registerApplicationStateObserver(applicationStateObserver);
39```