【无标题】鸿蒙学习-鸿蒙工程架构
一、分层架构概述
华为分层架构以“一次开发,多端部署”为目标,通过三层模型实现代码复用与设备适配:
-
产品定制层(Entry层)
-
定位:应用入口,处理设备/场景差异化需求(如UI、交互逻辑、资源配置)。
-
特点:
-
编译为
Entry类型HAP(Harmony Ability Package),作为主模块 -
支持按设备形态生成独立HAP组合,灵活适配手机、平板等多端设备
-
-
-
基础特性层(Feature层)
-
定位:封装高内聚业务模块(如导航栏、支付服务),提供可复用功能组件。
-
开发规范:
-
需承载Ability的功能 → 编译为
Feature类型HAP。 -
无需Ability的功能 → 按需编译为
HAR(静态库)或HSP(动态库)
-
-
-
公共能力层(Shared层)
-
定位:提供跨模块共享能力,确保技术栈统一。
-
核心能力:
-
公共UI组件:标准化弹窗、加载控件,保障体验一致性。
-
数据管理:统一数据存取接口(如OBS存储)。
-
外部交互:封装网络请求、设备I/O等底层通信。
-
工具库:基础工具类(加密、压缩等)。
-
-
约束:仅可被上层依赖,禁止反向调用,编译为
HAR包。
-
二、开发模型解析
1. 依赖关系
-
垂直依赖:产品定制层 → 基础特性层 → 公共能力层(单向调用)。
-
模块解耦:各层通过接口协议通信,避免代码耦合
2. 编译输出规范
| 层级 | 输出类型 | 部署形式 |
|---|---|---|
| 产品定制层 | Entry HAP | 应用主入口 |
| 基础特性层 | Feature HAP/HAR/HSP | 按需加载的业务模块 |
| 公共能力层 | HAR | 静态共享库 |
关键机制:
HSP动态库:支持运行时按需加载,减少资源占用1。
多目标构建:同一代码库根据设备类型生成差异化HAP组合1。
三、部署模型与多端协同
-
分发流程:
应用市场分发.app包 → 按设备类型解包为Entry HAP+Feature HAP→ 依赖的HSP同步部署1。 -
多端适配策略:
-
示例:平板设备可能加载完整HAP集合,手表仅加载核心Entry HAP。
-
统一体验:通过公共能力层标准化交互逻辑,确保跨端一致性
-
四、分层设计的核心价值
-
工程效率提升
-
公共能力层减少重复开发,如数据管理模块降低各业务线数据ETL成本
-
-
维护性与扩展性
-
模块化设计(如基础特性层)支持业务快速迭代,新增功能无需重构全栈
-
-
安全可控性
-
分层权限隔离:公共能力层集中管控数据安全策略(如Ranger权限模型)
-
-
生态兼容性
-
无缝适配华为全场景设备(手机/车机/穿戴),并支持昇腾AI芯片等国产化硬件
-
更多推荐

所有评论(0)