获取OpenHarmony源码:从DevEco Marketplace获取
Posted 随遇而安的dandelion
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取OpenHarmony源码:从DevEco Marketplace获取相关的知识,希望对你有一定的参考价值。
引言
OpenHarmony源码的获取方式有三种:从gitee、GitHub等基于git的代码托管平台获取;从华为的DevEco Marketplace网站获取;从镜像站点获取。
本文介绍如何用从华为的DevEco Marketplace网站获取OpenHarmony源码,并在Ubuntu系统下的鸿蒙设备开发环境中创建一个鸿蒙工程。
一、DevEco Marketplace简介
在华为的DevEco Marketplace这个网站里,有很多开源的鸿蒙发行版。这些开源的发行版大多是针对某一个具体的设备(如:一款开发板),对OpenHarmony的全量代码进行了裁剪。比如,某个设备因为硬件资源有限,没办法运行OpenHarmony中的一些功能组件,那么这些组件在发行版中就被裁掉了;或者说在这个设备的应用场景中根本就不需要某项功能,相应的功能组件也会在发行版中被裁掉。
我们在进行鸿蒙设备开发的时候,可以先到这个网站上去找一找有没有合适的发行版。这个网站也支持在这些发行版的基础上增加或删除一些功能组件,定制一个发行版本。你也可以把自己做的发行版提交到这个网站上开源给别人使用。
DevEco Marketplace这个网站的首页如下图所示。对于鸿蒙设备开发而言,比较重要的是 设备组件 和 文档 。开发者可到设备组件中查找各种开源发行版和组件包;文档中详细说明了如何获取发行版、组件包,如何定制发行版,以及如何贡献自己的发行版和组件包。
下面,以Hi3861处理器的一款开发板为例,讲解从华为的DevEco Marketplace网站获取OpenHarmony源码并创建鸿蒙工程的过程。
注意: 从DevEco Marketplace这个网站下载和贡献代码都需要先注册一个华为账号。
二、获取鸿蒙发行版
参考: https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/get-code/sourcecode-acquire.md
2.1 安装Node.js和HPM
获取发行版源码需要使用hpm命令行工具,而hpm使用Node.js中的npm安装的,所以要先安装Node.js和hpm。安装方法参考下文的第二部分第2.6~2.7节:
《搭建鸿蒙设备开发环境:Ubuntu20.04+DevEco Device Tool Release 3.0》 [链接]()
如果你已经按照上面这篇文章搭建好鸿蒙设备开发环境,可略过此步骤。
2.2 获取发行版的配置文件
1、进入DevEco Marketplace首页后,先用账号登录(如果没有注册华为账号,请先进行注册)。
2、打开 设备组件 页面,选择 开源发行版 ,使用页面左侧的 过滤器 帮助查找所需要的开源发行版,如下图所示:
3、单击选中的开源发行版,如:上图中的 WLAN连接类产品 ,就会打开这个开源发行版最新版本的详情页面,如下图所示:
4、在详情页面的右侧,可以看到版本号和发布时间,单击 直接下载 可下载这个版本的配置文件(暂时不要点击下载);在详情页面的左侧,可以看到对当前版本的描述,单击 版本 ,查看该发行版的所有版本,如下图所示:
单击任何一个版本,就可以进入这个版本的详情页面。也可以单击版本最右边的下载图标,直接下载这个版本的配置文件。
记录一下: 2022-06-18,3.1.0~3.1.2版本的配置文件都有问题,无法成功下载该发行版源码。将问题提交给华为后,华为承认存在bug,希望你看到本文的时候,已被修复。
之前我一直使用2.2.0版本,至少我目前没遇到问题;3.0.1版本的配置文件对于获取源码没有问题,在本文中,不妨就用一下这个版本。
5、单击3.0.1版本右侧的下载图标,下载得到一个.tgz
压缩文件,建议大家将这个压缩文件改个名字,改成自己想要创建的鸿蒙项目名称,例如:hispark_pegasus_301.tgz。我将这个压缩文件放到了~/Documents/DevEco/Projects
目录下。
2.3 下载发行版源码
1、解压发行版配置文件压缩包hispark_pegasus_301.tgz
。
进入压缩包所在的文件夹:~/Documents/DevEco/Projects
,在这个压缩文件中单击鼠标右键,选择 Extract Here ,就会得到一个名为hispark_pegasus_301
的文件夹。
2、进入文件夹hispark_pegasus_301
,在文件夹的空白处单击鼠标右键,选“Open in Terminal”,打开一个终端,在终端中执行命令:hpm install
,即开始下载发行版的代码和相关工具链(确保能连接互联网)。
成功后,鸿蒙项目文件夹hispark_pegasus_301
中的文件如下图所示:
如果你使用的是3.1.0~3.1.2版本的配置文件,可能会出现下图所示错误(至少2022-06-18测试时是这样的):
三、创建一个鸿蒙项目
请先按照下面这篇文章搭建鸿蒙开发环境:
《搭建鸿蒙设备开发环境:Ubuntu20.04+DevEco Device Tool Release 3.0》 [链接]()
DevEco Device Tool版本: devicetool-linux-tool-3.0.0.401.zip
1、打开DevEco Device Tool,在“Home”页面中单击“Import Project”。
2、在弹出的窗口中选择鸿蒙项目文件夹hispark_pegasus_301
,然后单击右下角的Import 。
3、在弹出的窗口中单击 Import 。
4、选择 Import from OpenHarmony Source 。
5、按照下图选择开发板、处理器等信息,然后单击 Open 。
6、在弹出的窗口中打勾,然后单击Yes。
7、打开的鸿蒙项目如下图所示。
8、按下图所示对项目进行编译。
后记
我们其实也可以在DevEco Device Tool里,一站式完成本文第二、三部分所做的工作,不过好像只能下载发行版的最新一个版本创建鸿蒙工程。所以等华为修复前文所提到的bug后,请看我的另一篇文章:
《获取OpenHarmony源码:从DevEco Marketplace获取(2)》
补记
我们也可以在Ubuntu终端中,以命令行的方式,依次完成鸿蒙发行版的查找、下载和编译。
创建一个项目文件夹,
1、查看DevEco Marketplace这个网站上都有哪些鸿蒙开发板
hpm search -t distribution
按n
翻到下一页,按q
退出。
2、新建一个项目文件夹(如:test),然后初始化
cd ~/Documents/DevEco/Projects
mkdir test
cd test
hpm init -t dist #初始化
3、在项目文件夹下,执行以下命令,下载开源发行版源码和工具链。
hpm i @ohos/hispark_pegasus@3.0.1
4、编译
有两种命令行编译方式:
(1)方式一:在项目文件夹下执行以下命令
hpm dist
(2)方式二:依次执行以下命令
hb set #设置项目路径和要编译的产品
hb build #编译项目
本文在CSDN、公众号、头条号和知乎同步发布,感谢关注。
以上是关于获取OpenHarmony源码:从DevEco Marketplace获取的主要内容,如果未能解决你的问题,请参考以下文章