1e41f4b71Sopenharmony_ci# @ohos.app.ability.Ability (Ability基类) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci[UIAbility](js-apis-app-ability-uiAbility.md)和[ExtensionAbility](js-apis-app-ability-extensionAbility.md)的基类,提供系统配置更新回调和系统内存调整回调。不支持开发者直接继承该基类。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> 本模块接口仅可在Stage模型下使用。 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## 导入模块 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci```ts 14e41f4b71Sopenharmony_ciimport { Ability } from '@kit.AbilityKit'; 15e41f4b71Sopenharmony_ci``` 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci## Ability的继承关系说明 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci各类Ability的继承关系如下图所示。 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci> **说明:** 22e41f4b71Sopenharmony_ci> 23e41f4b71Sopenharmony_ci> 部分ExtensionAbility组件(例如[FormExtensionAbility](../apis-form-kit/js-apis-app-form-formExtensionAbility.md)、[InputMethodExtensionAbility](../apis-ime-kit/js-apis-inputmethod-extension-ability.md)等)与下图中的ExtensionAbility基类不存在继承关系,均未在图中列出。 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci## Ability.onConfigurationUpdate 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_cionConfigurationUpdate(newConfig: Configuration): void 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci当系统配置更新时调用。 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci**参数:** 38e41f4b71Sopenharmony_ci 39e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 40e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 41e41f4b71Sopenharmony_ci| newConfig | [Configuration](js-apis-app-ability-configuration.md) | 是 | 表示需要更新的配置信息。 | 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci**示例:** 44e41f4b71Sopenharmony_ci ```ts 45e41f4b71Sopenharmony_ci// Ability是顶层基类,不支持开发者直接继承。故以派生类UIAbility举例说明。 46e41f4b71Sopenharmony_ciimport { UIAbility, Configuration } from '@kit.AbilityKit'; 47e41f4b71Sopenharmony_ci 48e41f4b71Sopenharmony_ciclass MyUIAbility extends UIAbility { 49e41f4b71Sopenharmony_ci onConfigurationUpdate(config: Configuration) { 50e41f4b71Sopenharmony_ci console.log(`onConfigurationUpdate, config: ${JSON.stringify(config)}`); 51e41f4b71Sopenharmony_ci } 52e41f4b71Sopenharmony_ci} 53e41f4b71Sopenharmony_ci ``` 54e41f4b71Sopenharmony_ci 55e41f4b71Sopenharmony_ci## Ability.onMemoryLevel 56e41f4b71Sopenharmony_ci 57e41f4b71Sopenharmony_cionMemoryLevel(level: AbilityConstant.MemoryLevel): void 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci当内存到达不同级别时系统回调该方法。 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Ability.AbilityRuntime.AbilityCore 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci**参数:** 66e41f4b71Sopenharmony_ci 67e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 68e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 69e41f4b71Sopenharmony_ci| level | [AbilityConstant.MemoryLevel](js-apis-app-ability-abilityConstant.md#memorylevel) | 是 | 当前内存使用级别。| 70e41f4b71Sopenharmony_ci 71e41f4b71Sopenharmony_ci**示例:** 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci ```ts 74e41f4b71Sopenharmony_ci// Ability是顶层基类,不支持开发者直接继承。故以派生类UIAbility举例说明。 75e41f4b71Sopenharmony_ciimport { UIAbility, AbilityConstant } from '@kit.AbilityKit'; 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ciclass MyUIAbility extends UIAbility { 78e41f4b71Sopenharmony_ci onMemoryLevel(level: AbilityConstant.MemoryLevel) { 79e41f4b71Sopenharmony_ci console.log(`onMemoryLevel, level: ${JSON.stringify(level)}`); 80e41f4b71Sopenharmony_ci } 81e41f4b71Sopenharmony_ci} 82e41f4b71Sopenharmony_ci ``` 83