鸿蒙 SDK 发布实战:JWorker 上架 ohpm 全流程

零、前言

分享一次完整的鸿蒙 HAR SDK 发布过程,以前几天发布的 JWorker SDK 为例。

JWorker 是一套简单易用的基于鸿蒙 Worker 的双向 RPC 通讯机制。 库地址:ohpm.openharmony.cn/#/cn/detail... 仓库地址:github.com/zincPower/J...

话不多说,接下来分享每一步的操作细节。

一、添加 README.mdCHANGELOG.md、LICENSE 文件

在发布的模块中添加这三个文件,需要与模块的 src 文件夹同层级。 具体结构如下图所示:

1、README.md 文件

内容描述 SDK 怎么被安装和使用,还有个人或团队的介绍等。描述内容一定要包含 ohpm install <你发布的 SDK 名称> ,否则上架审核时会被拒绝,并收到以下错误。

css 复制代码
README.md中未包含安装命令:ohpm install xxx或ohpm i xxx;

2、CHANGELOG.md 文件

用于记录 SDK 每个版本的发布时间和修改内容。

3、LICENSE 开源许可证

选择合适的开源许可证类型,例如:MIT、Apache-2.0 等。

MIT:choosealicense.com/licenses/mi... Apache-2.0:www.apache.org/licenses/LI...

具体内容可以从上面的链接中拷贝然后修改。以 MIT 为例,需要修改 [year][fullname] 两个值。

值得注意:

  • [fullname] 必须和 SDK 的 oh-package.json5name 的值完全一致,否则上架审核时会被拒绝,并收到以下错误。
go 复制代码
LICENSE文件中许可证条款内容和oh-package.json5文件中许可证名称不一致;
  • 修改 oh-package.json5license 的类型,默认是 Apache-2.0JWorker 使用的是 MIT 所以需要进行修改。否则还是会报上面的错误。
json 复制代码
{
  // 省略其他
  "license": "MIT",
}

4、让你的项目评分更高

如果想让 SDK 评分得满 50 分,则必须满足以下两点:

1、在 oh-package.json5 配置 authorkeywordshomepagerepository,具体作用请看下面 json 配置。

json 复制代码
{
  // 项目名称
  "name": "jworker",
  // 版本
  "version": "1.0.1",
  "description": "一套简单易用的基于鸿蒙 Worker 的双向 RPC 通讯机制",
  "main": "Index.ets",
  // 作者
  "author": "江澎涌",
  // 开源协议类型
  "license": "MIT",                                             
  "dependencies": {},
  // 关键字,能够让你的仓库被搜索到
  "keywords": [                                             
    "harmonyos",
    "worker",
    "rpc",
    "communication",
    "thread",
    "多线程",
    "emitter",
    "线程通讯",
  ],
  // 主页
  "homepage": "https://github.com/zincPower",               
  // 代码仓库
  "repository": "https://github.com/zincPower/JWorker",     
}

2、创建 example 目录,可以根据情况增加 README.md 和示例代码。

二、生成密钥

通过以下命令生成密钥

css 复制代码
ssh-keygen -m PEM -t RSA -b 4096 -f /[存放路径]/[密钥名称]

例如生成一个名称为 ohos_publish_key 的密钥,可以使用 ssh-keygen -m PEM -t RSA -b 4096 -f ohos_publish_key 进行生成,期间必须设置密钥密码,否则 OHPM 包管理器会拒绝。 过程如下图:

运行后会生成两个文件,私钥 ohos_publish_key 和 公钥 ohos_publish_key.pub

三、提交公钥

进入到 OpenHarmony 三方库中心仓的 "个人中心-认证管理",根据下图所示,在 "认证管理-新增" 的弹框中填入刚才生成的公钥 ohos_publish_key.pub 的内容然后保存。

如果没有 OpenHarmony 三方库中心仓的帐号先进行注册,这里就不再赘述。

四、本地配置私钥

将刚生成的私钥 ohos_publish_key 进行配置,配置命令如下

arduino 复制代码
ohpm config set key_path [ohos_publish_key 的路径]

输入后如果遇到 zsh: command not found: ohpm 说明需要配置 ohpm ,通过 open ~/.zshrc 打开配置,添加以下配置即可

ini 复制代码
export OHPM_PATH=/Users/[你的 mac 用户名]/Library/Huawei/ohpm/bin
export PATH=${PATH}:${OHPM_PATH}

配置后运行 source ~/.zshrc 或是重新打开 terminal 再次运行配置私钥命令即可。

五、配置发布码

进入到 OpenHarmony 三方库中心仓的 "个人中心" 在下图位置复制发布码

然后在 terminal 输入以下命令进行配置

arduino 复制代码
ohpm config set publish_id [刚刚获取的发布码]

六、编译发布的 har 包

在鸿蒙的开发 ide 中,先进行 Build - Clean Project 打扫项目,然后 Build - Make Module '你的模块名' 进行 HAR 包编译,如下图所示

七、发布 har 包

进入到上图所示的 default 目录下,然后运行 ohpm publish jworker.har 进行发布,过程需要输入密钥的密码,输入后就完成了。过程如下图所示:

八、查看发布情况

回到 OpenHarmony 三方库中心仓的 "个人中心" 就可以看到对应的消息提示了,后续多留意 SDK 的审核情况。

九、官方文档

发布共享包:developer.huawei.com/consumer/cn...

编译HAR模块:developer.huawei.com/consumer/cn...

十、作者博客

掘金:juejin.cn/user/182044...

csdn:blog.csdn.net/weixin_3762...

公众号:微信搜索 "江澎涌"

相关推荐
子榆.2 小时前
Flutter 与开源鸿蒙(OpenHarmony)的融合:跨平台开发新纪元
flutter·华为·开源·harmonyos
running up2 小时前
Java集合框架之ArrayList与LinkedList详解
javascript·ubuntu·typescript
全球通史2 小时前
HarmonyOS机械臂蓝牙控制应用开发完整教程
华为·harmonyos
爱吃大芒果2 小时前
Flutter 表单开发实战:表单验证、输入格式化与提交处理
开发语言·javascript·flutter·华为·harmonyos
狮子也疯狂2 小时前
跨平台适配:Flutter在鸿蒙生态中的应用
flutter·华为·harmonyos
不爱吃糖的程序媛3 小时前
Flutter-OH OAuth 鸿蒙平台适配详细技术文档
javascript·flutter·harmonyos
AAA_bo13 小时前
liunx安装canda、python、nodejs、git,随后部署私有网页内容提取工具--JinaReader全攻略
linux·python·ubuntu·typescript·aigc·python3.11·jina
讯方洋哥3 小时前
判断、循环
harmonyos
kirk_wang3 小时前
Flutter GPUImage 库在鸿蒙平台的 GPU 图像滤镜适配实战
flutter·移动开发·跨平台·arkts·鸿蒙