HarmonyOS鸿蒙Next中静态包Har和动态包Hsp的区别是什么

HarmonyOS鸿蒙Next中静态包(HAR) → 适合开源共享,发布到 ohpm.openharmony.cn。动态包(HSP) → 适合 元服务 动态加载,但只能用于私有或应用内集成。

Hap:是应用安装和运行的基本单元,相当于一个app

Har:HAR(Harmony Archive)是静态共享包是静态共享包, 可以包含代码、C++库、资源和配置文件

Hsp:HSP(Harmony Shared Package)是动态共享包,通过HSP可以实现代码和资源的共享,可以包含代码、C++库、资源和配置文件

1 回复

更多关于HarmonyOS鸿蒙Next中静态包Har和动态包Hsp的区别是什么的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙(HarmonyOS)开发中,动态包(HSP,Harmony Shared Package)和静态包(HAR,Harmony Archive)确实有不同的应用场景,你的理解基本正确:

1. 静态共享包(HAR)

  • 用途:主要用于模块化开发,将公共代码、资源、组件封装成静态库,供多个项目复用。
  • 发布方式:可以上传至 OpenHarmony 三方库中心仓(ohpm.openharmony.cn,供其他开发者远程依赖使用。
  • 特点
    • 编译时直接打包进应用,增加包体积。
    • 适用于通用工具类、UI组件等需要复用的模块。
    • 必须包含 oh-package.json5README.mdCHANGELOG.mdLICENSE 文件才能发布。

2. 动态共享包(HSP)

  • 用途:主要用于 元服务(原子化服务) 或应用内按需加载的场景,支持动态下载和更新。
  • 发布方式
    • 不能直接上传至 OpenHarmony 三方库中心仓,仅支持 私有仓库 或应用内集成。
    • 适用于需要 动态扩展功能 的场景,如元服务的分包加载、插件化架构。
  • 特点
    • 运行时按需加载,减少主包体积。
    • 支持跨设备协同,如手表、车机等场景。
    • 需要 API 10 及以上版本,且必须使用 Stage 模型。

总结

  • 静态包(HAR) → 适合开源共享,发布到 ohpm.openharmony.cn
  • 动态包(HSP) → 适合 元服务 动态加载,但只能用于私有或应用内集成。

如果你的目标是发布通用模块,选择 HAR;如果是开发元服务或动态扩展功能,选择 HSP。

回到顶部