回复
集成态HSP 原创
我不保射手的别打我
发布于 2024-7-8 18:27
浏览
2收藏
集成态HSP
HSP(Harmony Shared Package)是动态共享包,可以包含代码、C++库、资源和配置文件,通过HSP可以实现代码和资源的共享。
当前HSP分为两种:
- 应用内HSP:HSP不支持独立发布,而是跟随其宿主应用的APP包一起发布,与宿主应用同进程,具有相同的包名和生命周期。
- 集成态HSP:构建、发布过程中,不与特定的应用包名耦合;使用时,工具链支持自动将集成态HSP的包名替换成宿主应用包名。
应用内HSP与集成态HSP的区别:(如下表所示)
规格 | 应用内HSP | 集成态HSP |
---|---|---|
支持在配置文件中声明UIAbility组件和ExtensionAbility组价 | 不支持 | 不支持 |
打包方式 | 随宿主应用进行打包 | 编译后可以跨应用进行打包 |
配置文件 | 默认方式 | 在默认方式上添加新的配置 |
集成态HSP的使用场景
集团内部有多个应用,多个应用中都有一个相同的动态共享包。为了节约开发成本、实现代码和资源的共享,多个应用可以共享一个基建HSP(集成态HSP)。
集成态HSP的使用限制
- 集成态HSP只支持Stage模型。
- 集成态HSP需要在API12及以上版本使用,并且使用标准化的OHMUrl格式。
运行环境
本例基于以下环境开发:
- IDE: DevEco Studio 5.0.3.403
- SDK: API version 12
集成态HSP的开发
- 创建一个新的工程(集成态HSP创建方)。
新增配置,在工程级的目录下build-profile.json5。
- 新建HSP并进行配置,点击file->New->Moudle。
新增配置,在HSP模块的目录下build-profile.json5。
- 获取集成态的编译产物.tgz。
编译打包生成.tgz文件
编译完成后,查看配置文件。将图中所标记的两个配置文件打开并将其格式化处理。
查看两个文件中“bundleName”的值是否为空,若为空,则创建集成态HSP成功。
集成态HSP的使用
-
创建一个新的工程(集成态HSP使用方)。
新增配置,在工程级的目录下build-profile.json5。
-
调用集成态HSP。
在工程级目录下创建文件夹lib,将创建集成态HSP工程中集成态HSP的打包产物.tgz文件复制到lib的文件中。
-
添加依赖。在使用方工程的entry模块下的oh-package.json5配置文件中添加依赖。
-
安装运行。
效果图(模拟器):
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
标签
赞
2
收藏 2
回复
相关推荐