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

文章目录

最近不是觉得官方的展示富文本的控件 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": "[email protected]"},
  "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 小时前
华为ensp实现跨vlan通信
网络·华为·智能路由器
康康这名还挺多4 小时前
鸿蒙HarmonyOS list优化一: list 结合 lazyforeach用法
数据结构·list·harmonyos·lazyforeach
晚秋大魔王7 小时前
OpenHarmony 开源鸿蒙南向开发——linux下使用make交叉编译第三方库——nettle库
linux·开源·harmonyos
python算法(魔法师版)11 小时前
.NET 在鸿蒙系统上的适配现状
华为od·华为·华为云·.net·wpf·harmonyos
bestadc12 小时前
鸿蒙 UIAbility组件与UI的数据同步和窗口关闭
harmonyos
枫叶丹413 小时前
【HarmonyOS Next之旅】DevEco Studio使用指南(二十二)
华为·harmonyos·deveco studio·harmonyos next
ax一号街阿楠15 小时前
华为FAT AP配置 真机
网络·华为·智能路由器
吗喽对你问好15 小时前
华为5.7机考第一题充电桩问题Java代码实现
java·华为·排序
乱世刀疤17 小时前
深度 |国产操作系统“破茧而出”:鸿蒙电脑填补自主生态空白
华为·harmonyos
博睿谷IT99_1 天前
华为HCIP-AI认证考试版本更新通知
人工智能·华为