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暂不支持。

相关推荐
王二蛋与他的张大花1 小时前
高德地图 Flutter 插件:跨 Android / iOS / HarmonyOS 的完整实现
harmonyos
狼哥16861 小时前
蛋糕美食元服务_地图实现指南
ui·harmonyos
sensen_kiss2 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.9 软件测试 (Software Testing)(下)
学习·软件工程
wu_ye_m2 小时前
学习c语言第35天 函数声明和定义
c语言·开发语言·学习
清辞8532 小时前
Coze从入门到实战---第一、二章
大数据·人工智能·学习·语言模型
伊布拉西莫2 小时前
【流畅的Python】第20章:并发执行器 — 学习笔记
笔记·python·学习
JohnnyDeng943 小时前
【鸿蒙】HarmonyOS 数据持久化:Preferences/KV Store/RelationalStore 选型指南
harmonyos·arkts·鸿蒙·数据持久化·arkui
小雨青年3 小时前
【鸿蒙原生开发会议随记 Pro】用 NavPathStack 收拢会议页面跳转和返回刷新
华为·harmonyos
jinglong.zha3 小时前
LScript-从零基础到商业变现的AI自动化学习平台
运维·学习·自动化
闪闪发亮的小星星3 小时前
STK_00 学习方案路线
学习