一、分层架构概述

华为分层架构以“一次开发,多端部署”为目标,通过三层模型实现代码复用与设备适配:

  1. 产品定制层(Entry层)

    • 定位:应用入口,处理设备/场景差异化需求(如UI、交互逻辑、资源配置)。

    • 特点

      • 编译为Entry类型HAP(Harmony Ability Package),作为主模块

      • 支持按设备形态生成独立HAP组合,灵活适配手机、平板等多端设备

  2. 基础特性层(Feature层)

    • 定位:封装高内聚业务模块(如导航栏、支付服务),提供可复用功能组件。

    • 开发规范

      • 需承载Ability的功能 → 编译为Feature类型HAP

      • 无需Ability的功能 → 按需编译为HAR(静态库)或HSP(动态库)

  3. 公共能力层(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

    • 统一体验:通过公共能力层标准化交互逻辑,确保跨端一致性


四、分层设计的核心价值

  1. 工程效率提升

    • 公共能力层减少重复开发,如数据管理模块降低各业务线数据ETL成本

  2. 维护性与扩展性

    • 模块化设计(如基础特性层)支持业务快速迭代,新增功能无需重构全栈

  3. 安全可控性

    • 分层权限隔离:公共能力层集中管控数据安全策略(如Ranger权限模型)

  4. 生态兼容性

    • 无缝适配华为全场景设备(手机/车机/穿戴),并支持昇腾AI芯片等国产化硬件

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐