# @ohos.app.ability.AbilityStage (AbilityStage) **AbilityStage** is a runtime class for HAP files. **AbilityStage** notifies you of when you can perform HAP initialization such as resource pre-loading and thread creation during the HAP loading. > **NOTE** > > The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. > The APIs of this module can be used only in the stage model. ## Modules to Import ```ts import AbilityStage from '@ohos.app.ability.AbilityStage'; ``` ## AbilityStage.onCreate onCreate(): void Called when the application is created. **System capability**: SystemCapability.Ability.AbilityRuntime.Core **Example** ```ts import AbilityStage from '@ohos.app.ability.AbilityStage'; class MyAbilityStage extends AbilityStage { onCreate() { console.log('MyAbilityStage.onCreate is called'); } } ``` ## AbilityStage.onAcceptWant onAcceptWant(want: Want): string; Called when a specified ability is started. **System capability**: SystemCapability.Ability.AbilityRuntime.Core **Parameters** | Name| Type| Mandatory| Description| | -------- | -------- | -------- | -------- | | want | [Want](js-apis-app-ability-want.md) | Yes| Want information about the target ability, such as the ability name and bundle name.| **Return value** | Type| Description| | -------- | -------- | | string | Returns an ability ID. If this ability has been started, no new instance is created and the ability is placed at the top of the stack. Otherwise, a new instance is created and started.| **Example** ```ts import AbilityStage from '@ohos.app.ability.AbilityStage'; class MyAbilityStage extends AbilityStage { onAcceptWant(want) { console.log('MyAbilityStage.onAcceptWant called'); return 'com.example.test'; } } ``` ## AbilityStage.onConfigurationUpdate onConfigurationUpdate(newConfig: Configuration): void; Called when the global configuration is updated. **System capability**: SystemCapability.Ability.AbilityRuntime.Core **Parameters** | Name| Type| Mandatory| Description| | -------- | -------- | -------- | -------- | | newConfig | [Configuration](js-apis-app-ability-configuration.md) | Yes| Callback invoked when the global configuration is updated. The global configuration indicates the configuration of the environment where the application is running and includes the language and color mode.| **Example** ```ts import AbilityStage from '@ohos.app.ability.AbilityStage'; class MyAbilityStage extends AbilityStage { onConfigurationUpdate(config) { console.log('onConfigurationUpdate, language:' + config.language); } } ``` ## AbilityStage.onMemoryLevel onMemoryLevel(level: AbilityConstant.MemoryLevel): void; Called when the system has decided to adjust the memory level. For example, this API can be used when there is not enough memory to run as many background processes as possible. **System capability**: SystemCapability.Ability.AbilityRuntime.Core **Parameters** | Name| Type| Mandatory| Description| | -------- | -------- | -------- | -------- | | level | [AbilityConstant.MemoryLevel](js-apis-app-ability-abilityConstant.md#abilityconstantmemorylevel) | Yes| Memory level that indicates the memory usage status. When the specified memory level is reached, a callback will be invoked and the system will start adjustment.| **Example** ```ts import AbilityStage from '@ohos.app.ability.AbilityStage'; class MyAbilityStage extends AbilityStage { onMemoryLevel(level) { console.log('onMemoryLevel, level:' + JSON.stringify(level)); } } ``` ## AbilityStage.context context: AbilityStageContext; Defines the context of **AbilityStage**. **System capability**: SystemCapability.Ability.AbilityRuntime.Core | Name | Type | Description | | ----------- | --------------------------- | ------------------------------------------------------------ | | context | [AbilityStageContext](js-apis-inner-application-abilityStageContext.md) | The context is obtained in the callback invoked when initialization is performed during ability startup.|