鸿蒙开发文档
序列
01、HarmonyOS基础技能
01、一切从Hello World开始
01、快速入门
02、开发基础知识
02、ArkTS语言
03、ArkTS语言介绍
02、ArkTS语法练习
04、ArkTS基础知识思维导图
05、ArkTS语言思维导图
06、ArkTS编程规范
07、HarmonyOS术语
02、鸿蒙博客
03、进阶
01、应用框架
本文档使用 MrDoc 发布
-
+
首页
01、应用框架
```mindmap # 应用框架 - Ability Kit(程序框架服务) - 应用模型 - FA(Feature Ability)模型:从API 7开始支持的模型,已经不再主推 - Stage模型:从API 9开始新增的模型,是目前主推且会长期演进的模型 - Stage模型开发指导 - Stage模型开发概述 - 基本概念 - AbilityStage - 每个Entry类型或者Feature类型的HAP在运行期都有一个AbilityStage实例 - 当HAP中的代码首次被加载到进程中的时候,系统会先创建AbilityStage实例 - UIAbility组件 - 是一种包含UI的应用组件,主要用于和用户交互 - UIAbility组件的生命周期只包含创建/销毁/前台/后台等状态,与显示相关的状态通过WindowStage的事件暴露给开发者 - ExtensionAbility组件 - 是一种面向特定场景的应用组件 - 开发者并不直接从ExtensionAbility组件派生,而是需要使用ExtensionAbility组件的派生类 - 在Stage模型上,三方应用开发者不能开发自定义服务,而需要根据自身的业务场景通过ExtensionAbility组件的派生类来实现 - WindowStage - 每个UIAbility实例都会与一个WindowStage类实例绑定,该类起到了应用进程内窗口管理器的作用 - 它包含一个主窗口。也就是说UIAbility实例通过WindowStage持有了一个主窗口,该主窗口为ArkUI提供了绘制区域 - Context - 在Stage模型上,Context及其派生类向开发者提供在运行期可以调用的各种资源和能力 - UIAbility组件和各种ExtensionAbility组件的派生类都有各自不同的Context类,他们都继承自基类Context,但是各自又根据所属组件,提供不同的能力 - 开发流程 - 应用组件开发 - 进程模型 - 线程模型 - 应用配置文件 - 应用/组件级配置 - 应用包名配置: - 应用需要在工程的AppScope目录下的app.json5配置文件中配置bundleName标签,该标签用于标识应用的唯一性 - 推荐采用反域名形式命名(如com.example.demo,建议第一级为域名后缀com,第二级为厂商/个人名,第三级为应用名,也可以多级) - 图标和标签配置:图标和标签通常一起配置,对应app.json5配置文件和module.json5配置文件中的icon和label - 生成机制 - HAP中包含UIAbility - 如果在module.json5配置文件的abilities标签中配置了icon和label,且该对应的ability中skills标签下面的 entities中包含"entity.system.home"、actions中包含"action.system.home",则系统将优先返回 module.json5中的icon与label。如果存在多个满足条件的ability,优先返回module.json5中mainElement对应的ability配置的icon和label。 - 如果在module.json5配置文件的abilities标签中未设置icon和label,系统将返回app.json5中的icon和label - HAP中不包含UIAbility,系统将返回app.json5中的icon和label - 应用版本声明配置 - 应用版本声明需要在工程的AppScope目录下的app.json5配置文件中配置versionCode标签和versionName标签 - versionCode用于标识应用的版本号,该标签值为32位非负整数。此数字仅用于确定某个版本是否比另一个版本 更新,数值越大表示版本越高。versionName标签标识版本号的文字描述。 - UIAbility组件 - UIAbility组件概述 - UIAbility组件生命周期 - UIAbility组件启动模式 - UIAbility组件基本用法 - UIAbility组件与UI的数据同步 - 启动应用内的UIAbility组件 - UIAbility备份恢复 - FA模型开发指导--弃用 - ArkDate(方舟数据管理) - ArkTS(方舟编程语言) - ArkUI(方舟UI框架) - ArkWeb(方舟Web) - Background Tasks Kit(后台任务开发服务) - Core File Kit(文件基础服务) - Form Kit(卡片开发服务) - IME Kit(输入法开发服务) - IPC Kit(进程间通信服务) - Localization Kit(本地化开发服务) - UI Design Kit (UI 设计套件) ```
个人天使
2025年4月30日 11:24
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码