免费开源的建站系统,不收费的网站,网站开发工程师应聘书范文1000,营销策划方案结构OpenHarmony提供了两种共享包#xff0c;HAR#xff08;Harmony Archive#xff09;静态共享包#xff0c;和HSP#xff08;Harmony Shared Package#xff09;动态共享包。 HAR与HSP都是为了实现代码和资源的共享#xff0c;都可以包含代码、C库、资源和配置文件… OpenHarmony提供了两种共享包HARHarmony Archive静态共享包和HSPHarmony Shared Package动态共享包。 HAR与HSP都是为了实现代码和资源的共享都可以包含代码、C库、资源和配置文件最大的不同之处在于HAR中的代码和资源跟随使用方编译如果有多个使用方它们的编译产物中会存在多份相同拷贝而HSP中的代码和资源可以独立编译运行时在一个进程中代码也只会存在一份。 1、HAR静态共享包模块
1.1 创建/编译 1.2 引用/使用
1.2.1 从ohpm三方库中引用
ohpm install 发布成功的包名(eg: ohos/lottie)
1.2.2 从本地引用HAR包
ohpm install ./package.har
开发及引用静态共享包https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/creating_har_api9-0000001518082393-V3#section143510369612
1.3 发布我们的HAR包到三方开源库
1.3.1 OpenHarmony中心仓创建账号
OpenHarmony三方库中心仓https://ohpm.openharmony.cn/#/cn/personalCenter/notifications
1.3.2 利用工具ssh-keygen生成公钥和私钥文件
// /d/SSH/ohpm.pub为密钥存放的位置
ssh-keygen -m PEM -t RSA -b 4096 -f /d/SSH/ohpm-test.pub// 输入量两次一致的密码即可自动生成密钥
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
1.3.3 OpenHarmony中心仓中配置ohpm公钥
注册成功后进入个人中心【认证管理】用我们生成的密钥进行配置具体见下图 1.3.4 配置本地的环境变量.ohrmrc // 1、配置私钥d/SSH/ohpm.pub为我们生成的私钥文件位置
ohpm config set key_path d/SSH/ohpm-test.pub// 2、配置发布码publish_id或者找到.ohrmrc直接修改publish_id字段
ohpm config set publish_id CQF******Z// 结果
// ohpm WARN: invalid config key_pathd/SSH/ohpm.pub set in C:\Users\*****\.ohpm\.ohpmrc - invalid filesystem path.1.3.5 发布HAR到三方库
// 1、执行推包命令
ohpm publish D:\workspace-hw-OS\HAR\GridEdit.har// 2、输入开源仓配置的密码即可完成 1.3.6 三方库审核
审核通过即可通过ohpm从开源仓下载我们的包 工具扫描包括完整性检查与安全性检查两部分。完整性检查将基于创建三方库的具体要求进行三方库目录、内容审核如果您提交的三方库缺少必要性文件三方库将被退回请您根据提示完善三方库内容后再次提交上架审核安全性检查将结合目前已有的安全检测工具对三方库进行定期检测。 1.3.7 发布失败问题整理 模块源码中缺少文件 缺少开源声明文件ohpm ERROR: HttpCode 400 The OHPM package must contain a non-empty license file. 缺少README.md说明文件ohpm ERROR: HttpCode 400 The OHPM package must contain a non-empty readme.md file. 缺少GHANGELOG.md版本说明文件ohpm ERROR: HttpCode 400 The OHPM package must contain a non-empty changelog.md file.
2、HSP动态共享包模块
2.1 创建/编译 2.2 引用
2.2.1 在使用方entry/feature模块的oh-package.json5文件中添加HSP模块引用
{...dependencies: {sharedlibrary: file:../libraryTest}
}
2.2.2 点击执行 Run ohpm install
HSP目录将映射到entry/feature的oh_modules目录下
2.3 使用 HSP旨在解决HAR存在的几个问题 多个HAP引用相同的HAR导致的APP包大小膨胀问题。 多个HAP引用相同的HARHAR中的一些状态变量无法共享的问题。
HSP的一些约束 HSP及其使用方都必须是Stage模型。 HSP及其使用方都必须使用esmodule编译模式。 HSP不支持在配置文件中声明abilities、extensionAbilities标签。