1# AppStateData 2 3The AppStateData module defines the application state data, which can be obtained through [appManager.on('applicationState')](./js-apis-app-ability-appManager.md#appmanageronapplicationstate). 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## Properties 16 17**System capability**: SystemCapability.Ability.AbilityRuntime.Core 18 19| Name | Type | Mandatory | Description | 20| ------------------------- | ------ | ---- | --------- | 21| bundleName | string | No | Bundle name.| 22| uid | number | No | UID of the application. | 23| state | number | No | Application state.<br>**0**: The application is being initialized.<br>**1**: The application has been initialized and is ready.<br>**2**: The application is running in the foreground.<br>**3**: The application is having the focus. (This state is reserved.)<br>**4**: The application is running in the background.<br>**5**: The application has exited.| 24| isSplitScreenMode | boolean | No| Whether the application is in split-screen mode.<br>**true**: The application is in split-screen mode.<br>**false**: The application is not in split-screen mode.| 25| isFloatingWindowMode | boolean | No| Whether the application is in floating window mode.<br>**true**: The application is in floating window mode.<br>**false**: The application is not in floating window mode.| 26 27**Example** 28 29```ts 30import { appManager } from '@kit.AbilityKit'; 31import { BusinessError } from '@kit.BasicServicesKit'; 32 33let applicationStateObserver: appManager.ApplicationStateObserver = { 34 onForegroundApplicationChanged(appStateData) { 35 console.log(`[appManager] onForegroundApplicationChanged: ${JSON.stringify(appStateData)}`); 36 console.log(`appStateData.bundleName: ${appStateData.bundleName}`); 37 console.log(`appStateData.uid: ${appStateData.uid}`); 38 console.log(`appStateData.state: ${appStateData.state}`); 39 console.log(`appStateData.isSplitScreenMode: ${appStateData.isSplitScreenMode}`); 40 console.log(`appStateData.isFloatingWindowMode: ${appStateData.isFloatingWindowMode}`); 41 }, 42 onAbilityStateChanged(abilityStateData) { 43 console.log(`[appManager] onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`); 44 }, 45 onProcessCreated(processData) { 46 console.log(`[appManager] onProcessCreated: ${JSON.stringify(processData)}`); 47 }, 48 onProcessDied(processData) { 49 console.log(`[appManager] onProcessDied: ${JSON.stringify(processData)}`); 50 }, 51 onProcessStateChanged(processData) { 52 console.log(`[appManager] onProcessStateChanged: ${JSON.stringify(processData)}`); 53 }, 54 onAppStarted(appStateData) { 55 console.log(`[appManager] onAppStarted: ${JSON.stringify(appStateData)}`); 56 }, 57 onAppStopped(appStateData) { 58 console.log(`[appManager] onAppStopped: ${JSON.stringify(appStateData)}`); 59 } 60}; 61 62try { 63 const observerId = appManager.on('applicationState', applicationStateObserver); 64 console.log(`[appManager] observerCode: ${observerId}`); 65} catch (paramError) { 66 let code = (paramError as BusinessError).code; 67 let message = (paramError as BusinessError).message; 68 console.error(`[appManager] error: ${code}, ${message}`); 69} 70``` 71