Ability是应用所具备的能力的抽象,一个应用可以包含一个或多个Ability。Ability分为两种类型:FA(Feature Ability)和PA(Particle Ability)。
FA/PA是应用的基本组成单元,能够实现特定的业务功能。两者主要的区别是FA有UI界面,而PA无UI界面。
如图4-5所示的MainAbility就是一个FA。
图4-5 MainAbility
MainAbility继承自Ability类。同时,从代码可以看出,MainAbility设置了一个路由,可以路由到MainAbilitySlice。
MainAbilitySlice继承自AbilitySlice类,如图4-6所示。而AbilitySlice就是用于呈现UI界面的。
图4-6 AbilitySlice类
UI界面定义在哪里呢?我们可以打开resource目录,如图4-7所示,该目录就是整个应用所使用的UI界面元素。
图4-7 UI界面元素
有关Ability的内容,将在后续章节深入探讨。