7、鸿蒙学习-共享包概述

**HarmonyOS提供了两种共享包,HAR(Harmony Archive)**静态共享包,和HSP(Harmony Shared Package)动态共享包。

HAR与HSR都是为了实现代码和资源的共享,都可以包含代码、C++库、资源和配置文件,最大的不同之处在于:HAR中的代码和资源跟随使用方编译,如果有多个使用方,它们的编译产物中会存在多份相同拷贝;而HSR中的代码和资源可以独立编译,运行时在一个进程中代码也只会存在一份。

HAR和HSP在APP包中的形态示意图:

HSP旨在解决HAR存在的几个问题:

  • 多个HAP引用相同的HAR,导致APP包大小膨胀问题
  • 多个HAP引用相同的HAR,HAR中的一些状态变量无法共享的问题。

HSP的一些约束:

  • HSP及其使用方都必须是Stage模型
  • HSP及其使用方法都必须使用esmodule编译模式
  • HSP不支持在配置文件中声明abilities、extensionAbilities标签。

HSP按照使用场景可以分为应用内HSP和应用间HSP,应用间HSP暂不支持。

相关推荐
炽烈小老头7 分钟前
【每天学习一点算法 2026/04/15】两整数之和(附带位运算总结)
学习·算法
风兮雨露12 分钟前
2026年全国硕士研究生招生考试(附资源)
学习
Xpower 1718 分钟前
PHM算法学习 Day 3:深度卷积神经网络(CNN)故障诊断变体
学习·算法·cnn
im_AMBER21 分钟前
学习 Redux Toolkit :从 Context 误区到 createSlice 实践
前端·javascript·学习·react.js·前端框架
有谁看见我的剑了?22 分钟前
Linux 内存巨页与透明巨页学习
java·linux·学习
red_redemption23 分钟前
自由学习记录(166)
学习
Swift社区24 分钟前
鸿蒙游戏的资源加载与管理
游戏·华为·harmonyos
前端不太难25 分钟前
鸿蒙游戏如何避免“巨型页面文件”?
游戏·华为·harmonyos
CompaqCV29 分钟前
OpencvSharp 算子学习教案之 - Cv2.Multiply
学习·c#·opencvsharp算子·opencv教程
CompaqCV32 分钟前
OpencvSharp 算子学习教案之 - Cv2.Subtract 重载2
学习·c#·opencvsharp算子·opencv教程