Ability
是应用/服务所具备的能力的抽象,一个Module可以包含一个或多个 Ability
,在鸿蒙系统中,Ability
提供了对 Ability
生命周期、上下文环境等调用管理的能力,包括 Ability
创建、销毁、转储客户端信息等
鸿蒙系统中的 Ability
主要分为两种类型:UIAbility
和 ExtensionAbility
。
- UIAbility :
- 定义 :包含UI界面,提供展示UI的能力,主要用于和用户交互 。
- 创建 :在模块中添加UIAbility时,选中对应的模块,单击鼠标右键,选择New > Ability,设置Ability名称,选择是否在设备主屏幕上显示该功能的启动图标,单击Finish完成Ability创建 。
- ExtensionAbility :
- 定义 :提供特定场景的扩展能力,满足更多的使用场景 。
- 创建 :在模块中添加ExtensionAbility时,选中对应的模块,单击鼠标右键,选择不同的场景类型(如Accessibility、EmbeddedUIExtensionAbility等) 。当前仅Application工程支持创建ExtensionAbility。设置Ability名称,单击Finish完成ExtensionAbility创建。
此外,Ability是Ability模块的基类,提供系统配置更新回调和系统内存调整回调 。Ability的继承关系包括UIAbility和ExtensionAbility等具体类.
总之,Ability是鸿蒙系统中用于管理应用能力的核心组件,通过不同类型的Ability可以实现不同的功能需求。