鸿蒙-如何发布一个三方库

文章目录

最近不是觉得官方的展示富文本的控件 RichTextRichEditor不好用嘛,然后自己撸了一个能展示简单富文本的组件,具体文章内容看 鸿蒙-做一个简单的、大家都能学会的富文本解析渲染控件。然后把这个控件发布到了 OpenHarmony三方库中心仓,地址 simplehtmlrender,没有依赖任何三方控件,使用官方的xml解析器进行解析,使用 TextContainerSpanSpanImageSpan进行展示。
这里记录一下发布过程以及需要注意的点

需要的工具

DevEcoStudio和ohpm命令行工具。

安装完DevEcoStudio后,windows上ohpm在安装目录的DevEco Studio\tools\ohpm\bin文件夹下,mac上是在/Applications/DevEco-Studio.app/Contents/tools/ohpm/bin文件夹下。

注册账号

这没啥好说的,按提示注册就好了

认证管理

生成公私密钥文件

利用工具 ssh-keygen 生成公、私钥文件,这个和github的流程差不多

shell 复制代码
ssh-keygen -m PEM -t RSA -b 4096 -f ~/.ssh_ohpm/mykey 

windows下可以把路径换成C:\Users\username\.ssh_ohpm

需要注意几点:

  • 先创建对应的文件夹,否则会报错。
  • 生成公私密钥文件时一定要输入密码,不要直接回车跳过,要不然在发布流程会有对应提示,还得再重新生成

上传公钥

在【个人中心】-【认证管理】下:点击页面左上角的"新增"按钮,并将公钥文件(mykey.pub)的内容粘贴到公钥输入框中。

.ohpmrc文件的key_path字段上。该文件一般在C:\Users\username\.ohpm 或者mac的~/.ohpm文件夹下。

找不到这个文件也可以执行下面的命令进行配置

shell 复制代码
ohpm config set key_path ~/.ssh_ohpm/mykey 

同样的,windows下把路径换成C:\Users\username\.ssh_ohpm

发布之前的配置

登录OpenHarmony三方库中心仓,从 【个人中心】页面中【复制发布码】,并配置到.ohpmrc文件中publish_id字段上,可执行如下命令:

shell 复制代码
ohpm config set publish_id your_publish_id

配置发布地址:

shell 复制代码
ohpm config set publish_registry https://ohpm.openharmony.cn/ohpm

其他

可以创建自己的组织,这个不是必须的。

注意一下三方库的名称,三方库名称指南

编写及发布

创建项目

创建一个新的项目,然后在项目中创建一个Module,这里需要选择static library。然后在这个Module中编写相关代码。

必须的文件

README.md

在Module的根目录创建一个 README.md 文件,描述您三方库的代码以及如何使用它,文件不能为空。

并且该文件中必须 包含如何安装,也就是 ohpm install 库名字,否则审核不通过。

可以看下其他仓库怎么写的。基本上包含如何安装、如何使用以及一些示例。

该文件的内容会展示在仓库的描述标签下。

CHANGELOG.md

在Module的根目录中,创建一个 CHANGELOG.md 文件,描述您三方库的代码不同版本的变更内容,文件不能为空。

该文件的内容会展示在仓库的更新日志标签下

LICENSE

在Module的根目录中,创建一个 LICENSE 文件,指定该软件包可以在什么样的许可下被使用、修改和共享,文件不能为空。

oh-package.json5
json 复制代码
{
  "name": "simplehtmlrender",
  "version": "1.0.2",
  "description": "简易的富文本渲染控件,支持span、font、br、a标签,支持color、font-color、size、font-size、background、href属性",
  "main": "Index.ets",
  "keywords": ["富文本","html展示","富文本展示"],
  "author": {"name": 'huangyuan',"email": "huangyuan@huangyuanlove.com"},
  "license": "Apache-2.0",
  "homepage": 'https://juejin.cn/post/7427455855941156876',
  "repository":'https://gitee.com/huangyuan/SimpleHtmlRender',
  "dependencies": {},
}

其中,nameversiondescriptionkeywordsauthorlicense字段是必须的

评分

三方库中央仓里面还有个points评分,最高是50分,这个是根据文件、文档的健全程度来打分的,不包含任何个人主观看法。

这个评分很好弄,按照标准来就行

发布

发布之前删除敏感信息
发布之前删除敏感信息
发布之前删除敏感信息

发布的时候需要上传har文件,这就需要使用DevEcoStudio来构建,如何构建看(这里)[https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-build-har-V5\]。

我们在前面已经配置好了publish_idpublish_registry信息,接着执行ohpm publish <HAR路径>就可以了。过程中会让你输入生成公钥时使用的密码,上传成功后可以在个人中心-->消息中查看审核是否通过的消息。

如果上传失败,会提示对应的错误信息,根据提示修改就好了

这样就完成了发布。

相关推荐
别说我什么都不会2 小时前
鸿蒙轻内核M核源码分析系列十二 事件Event
操作系统·harmonyos
Huang兄4 小时前
鸿蒙-canvas-刮刮乐
华为·harmonyos
Sharknade4 小时前
鸿蒙-阻塞式文件锁
华为·harmonyos
敢嗣先锋4 小时前
鸿蒙5.0实战案例:基于原生能力的深色模式适配
ui·移动开发·harmonyos·arkui·组件化·鸿蒙开发
Huang兄4 小时前
鸿蒙-验证码输入框的几种实现方式-上
harmonyos
二川bro4 小时前
前端如何转战鸿蒙
华为·harmonyos
2501_904447747 小时前
苹果确认iOS 18.4四月初推出:Apple Intelligence将迎来中文支持
华为·智能手机·django·virtualenv·pygame
陈无左耳、11 小时前
HarmonyOS学习第2天: 解锁语言与框架的无限可能
学习·华为·harmonyos
HMS Core11 小时前
【FAQ】HarmonyOS SDK 闭源开放能力 —Live View Kit (1)
华为·harmonyos