认识鸿蒙 Context
Context 是应用中对象的上下文,其提供了应用的一些基础信息,例如 resourceManager(资源管理)、applicationInfo(当前应用信息)、dir(应用文件路径)、area(文件分区)等,以及应用的一些基本方法,例如 createBundleContext()、getApplicationContext()等。UIAbility 组件和各种 ExtensionAbility 派生类组件都有各自不同的 Context 类。分别有基类 Context、ApplicationContext、AbilityStageContext、UIAbilityContext、ExtensionContext、ServiceExtensionContext 等 Context。
Context 继承关系
获取 UIAbilityContext
每个 UIAbility 中都包含了一个 Context 属性,提供操作应用组件、获取应用组件的配置信息等能力
获取特定场景 ExtensionContext
以 ServiceExtensionContext 为例,表示后台服务的上下文环境,继承自 ExtensionContext,提供后台服务相关的接口能力。
获取 AbilityStageContext
Module 级别的 Context,和基类 Context 相比,额外提供 HapModuleInfo、Configuration 等信息
获取 ApplicationContext
应用级别的 Context。ApplicationContext 在基类 Context 的基础上提供了订阅应用内应用组件的生命周期的变化、订阅系统内存变化和订阅应用内系统环境的变化的能力,在 UIAbility、ExtensionAbility、AbilityStage 中均可以获取。
版权声明: 本文为 InfoQ 作者【龙儿筝】的原创文章。
原文链接:【http://xie.infoq.cn/article/35df59e665fff20af8e97a92d】。文章转载请联系作者。
评论