0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

openharmony代码获取分析

姚小熊27 来源:HarmonyOS技术社区 作者:HarmonyOS技术社区 2021-06-23 16:30 次阅读

本文档将介绍如何获取OpenHarmony源码并说明OpenHarmony的源码目录结构。OpenHarmony的代码以组件的形式开放,开发者可以通过如下其中一种方式获取:

获取方式1:从镜像站点下载压缩文件(推荐

获取方式2:从hpm网站组件式获取。通过HPM,查找满足需求的解决方案,挑选/裁剪组件后下载。

获取方式3:用包管理器命令行工具获取。通过HPM的hpm-cli命令行工具,执行命令下载。

获取方式4:从代码仓库获取。通过repo或git工具从代码仓库中下载。

获取方式1:从镜像站点获取

为了获得更好的下载性能,您可以选择从以下站点的镜像库获取源码或者对应的解决方案。

获取方式2:从hpm网站组件式获取

适用场景

对于刚接触OpenHarmony的新用户,希望能够参考一些示例解决方案从而进行快速开发。可以在HPM获取推荐的解决方案,以此为基础,增加或裁剪部分组件,快速定制系统。

操作步骤

1.查找合适的解决方案组件包。

打开包管理页面HPM,设定搜索的对象为“解决方案“,如下图所示。

自搜索框输入关键字搜索,如“camera”。

结果中显示匹配的解决方案,可以进一步根据组件类别等过滤条件(如:适配的开发板,内核)精确筛选。

查找合适的解决方案,点击查看解决方案详情介绍。

2.定制解决方案组件包。

仔细阅读解决方案的说明,以了解该解决方案的使用场景、特性、使用方法以及如何进行定制化,如下图所示。

点击「直接下载」,将解决方案下载到本地。

点击「定制组件」,将对解决方案包含的组件进行定制。

3.定制组件。

3.1进入解决方案定制页面,如下图所示。

3.2通过关闭开关移除可选组件,或者通过“添加组件”增加新的组件。

3.2在右边填写您的项目基本信息,包括名称、版本、描述等信息。

3.4点击“下载“,系统会根据您的选择,生成相应的OpenHarmony代码结构文件(如name.zip),保存至本地文件。

下载的压缩文件并未包含源代码的原始文件,可以在IDE中导入下载的压缩包,解压后执行hpm的安装指令(hpm install),才会将所需要的组件全部下载下来。

下载的组件存在工程目录下的ohos_bundles文件夹中。

获取方式3:用包管理器命令行获取

适用场景

用户已通过组件式获取的方式获取源码,需要对源码中的某个或某几个组件进行独立升级。

用户已经比较熟悉OpenHarmony系统的开发并且熟练掌握命令行工具的使用。

准备

通过命令行获取,需要先安装Node.js和hpm命令行工具,安装步骤如下:

安装Node.js。

官网下载并在本地安装Node.js.

推荐安装 Node.js 12.x (包含 npm 6.14.4)或更高版本 (推荐 12.13.0+)。

2.通过Node.js自带的npm安装hpm命令行工具。

打开CMD,执行以下命令:

npm install -g @ohos/hpm-cli1.

3.安装完成后执行如下命令,显示hpm版本,即安装成功。

hpm -V 或 hpm --version1.

4.如果升级hpm的版本,请执行如下命令:

npm update -g @ohos/hpm-cli1.

操作

接下来将组件添加到开发项目中,假定要获取的组件名为@ohos/demo,具体操作如下:

1.进入开发目录,执行如下命令,采用默认模板创建一个开发项目。

hpm init -t default1.

2.执行如下命令,安装组件@ohos/demo

hpm install @ohos/demo1.

3.工具会自动从服务器下载所有依赖的组件,下载成功则显示Install successfully!

$ hpm install @ohos/demo

Requesting: https://url.foo.bar/hpm/registry/api/bundles/@ohos/demo

downloading @ohos/demo

Requesting: https://lfcontentcenterdev.。。。。。/bMAlLrYISLqdUTFFFCdgzA.tgz

extract D:\demo\ohos_bundles\@ohos\demo\@ohos-demo-1.0.7.tgz

Install successfully!1.2.3.4.5.6.

获取方式4:从代码仓库获取

适用场景

基于OpenHarmony的稳定分支建立自己的基线,分发下游客户。

已经完成自身软件与OpenHarmony的对接,需要进行OpenHarmony官方认证

芯片/模组/app通过OpenHarmony官方认证后,贡献代码到OpenHarmony生态。

修复OpenHarmony的问题。

学习OpenHarmony的源码。

准备

1.注册码云gitee账号。

2.注册码云SSH公钥,请参考码云帮助中心的公钥管理:https://gitee.com/help/articles/4181

3.安装git客户端并配置用户信息。

git config --global user.name “yourname”

git config --global user.email “your-email-address”

git config --global credential.helper store1.2.3.

复制

4.安装码云repo工具,可以执行如下命令。

curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 》 /usr/local/bin/repo

chmod a+x /usr/local/bin/repo

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests1.2.3.

操作

方式一(推荐):通过repo下载

repo init -u https://gitee.com/openharmony/manifest.git -b master

repo sync -c

方式二:通过git clone单个代码仓库

进入代码仓库主页:https://gitee.com/openharmony,选择需要克隆的代码仓库,执行命令,如:

git clone https://gitee.com/openharmony/manifest.git -b master1.

源码目录简介

下表是OpenHarmony源码的目录及简单说明:

责任编辑:YYX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4548

    浏览量

    66609
  • OpenHarmony
    +关注

    关注

    23

    文章

    3185

    浏览量

    15145
收藏 人收藏

    评论

    相关推荐

    【鸿蒙】OpenHarmony 4.0蓝牙代码结构简析

    OpenHarmony 4.0蓝牙代码结构简析前言 OpenHarmony 4.0上蓝牙仓和目录结构进行一次较大整改,本文基于4.0以上版本对蓝牙代码进行
    的头像 发表于 02-26 16:08 291次阅读
    【鸿蒙】<b class='flag-5'>OpenHarmony</b> 4.0蓝牙<b class='flag-5'>代码</b>结构简析

    OpenHarmony C++公共基础类库应用案例:HelloWorld

    (即OpenHarmony-v3.2.1-release)运行正常,详细说明及案例源代码可参考:https://gitee.com/Lockzhiner-Electronics/lockzhiner
    的头像 发表于 11-23 08:22 289次阅读
    <b class='flag-5'>OpenHarmony</b> C++公共基础类库应用案例:HelloWorld

    OpenHarmony C++公共基础类库应用案例:Thread

    (即OpenHarmony-v3.2.1-release)运行正常,详细说明及案例源代码可参考:https://gitee.com/Lockzhiner-Electronics/lockzhiner-rk3
    的头像 发表于 11-23 08:22 387次阅读
    <b class='flag-5'>OpenHarmony</b> C++公共基础类库应用案例:Thread

    OpenHarmony开发者论坛发布,即刻加入获取知识与案例

    11月4日,以“技术筑生态,智联赢未来”为主题的第二届开放原子开源基金会OpenHarmony技术大会在北京隆重举办。本次大会上,OpenHarmony项目群工作委员会代表、华为终端BG软件部副总裁
    的头像 发表于 11-21 11:30 271次阅读

    第二届OpenHarmony技术大会——硬件(南向)生态分论坛

    E N D       关注我们,持续获取OpenHarmony技术大会最新消息! 审核编辑 黄宇
    的头像 发表于 11-02 08:38 151次阅读
    第二届<b class='flag-5'>OpenHarmony</b>技术大会——硬件(南向)生态分论坛

    议程直击 | 第二届OpenHarmony技术大会——应用(北向)生态分论坛

    E N D       关注我们,持续获取OpenHarmony技术大会最新消息! 审核编辑 黄宇
    的头像 发表于 11-02 08:38 149次阅读
    议程直击 | 第二届<b class='flag-5'>OpenHarmony</b>技术大会——应用(北向)生态分论坛

    议程直击 | 第二届OpenHarmony技术大会——OpenHarmony技术俱乐部分论坛

    E N D    关注我们,持续获取OpenHarmony技术大会最新消息! 审核编辑 黄宇  
    的头像 发表于 11-01 08:44 368次阅读
    议程直击 | 第二届<b class='flag-5'>OpenHarmony</b>技术大会——<b class='flag-5'>OpenHarmony</b>技术俱乐部分论坛

    社区代码贡献企业启新篇,深开鸿代码贡献量超过200万行

    ”)官网,社区代码贡献企业取得新成绩,深开鸿成为华为之后,第二家社区代码贡献量超过百万行的生态企业、且总贡献量累计突破200万行,为培育和发展OpenHarmony社区注入源动力!截至目前,华为
    的头像 发表于 10-18 16:15 372次阅读

    再创新高!深开鸿OpenHarmony社区代码贡献量超过200万行!

    2023年10月10日,据OpenAtomOpenHarmony(以下简称“OpenHarmony”)官网显示,深开鸿在OpenHarmony社区主仓代码贡献量超过200万行,在华为以
    的头像 发表于 10-13 09:54 469次阅读
    再创新高!深开鸿<b class='flag-5'>OpenHarmony</b>社区<b class='flag-5'>代码</b>贡献量超过200万行!

    OpenHarmony使用ArkUI Inspector分析布局

    本文转载自《#2023 盲盒+码 # OpenHarmony使用ArkUI Inspector分析布局》,作者:zhushangyuan_ ● 摘要:视图的嵌套层次会影响应用的性能,开发者应该移除
    发表于 09-04 15:27

    直播预告 | 今晚19:00-20:00,OpenHarmony 领学课堂系列技术直播课 (第2期 ),不见不散!

    实践经验分享。 西安电子科技大学王璐副教授《面向高可信软件生态的代码分析与运维治理》将于 8月30日 1900 正式开播!欢迎扫描下方二维码,我们在直播间等你来 ↓  ↓  ↓ B站直播通道
    的头像 发表于 08-31 08:41 294次阅读
    直播预告 | 今晚19:00-20:00,<b class='flag-5'>OpenHarmony</b> 领学课堂系列技术直播课 (第2期 ),不见不散!

    OpenHarmony应用开发入门与基础课程_第四章-获取网络数据 _OpenHarmony网络能力

    开发网络数据OpenHarmony
    OpenHarmony开发者
    发布于 :2023年08月22日 16:38:23

    什么是静态代码分析?静态代码分析概述

    静态分析可帮助面临压力的开发团队。高质量的版本需要按时交付。需要满足编码和合规性标准。错误不是一种选择。 这就是开发团队使用静态分析工具/源代码分析工具的原因。在这里,我们将讨论静态
    的头像 发表于 07-19 12:09 906次阅读
    什么是静态<b class='flag-5'>代码</b><b class='flag-5'>分析</b>?静态<b class='flag-5'>代码</b><b class='flag-5'>分析</b>概述

    九联科技将继续基于OpenHarmony 共建代码

    会展中心圆满落幕。 此次论坛群英荟萃,人才集聚,来自产、学、研的各界翘楚1000余人共话开源产业的落地成果和前景展望,助推开源产业全面升级。 九联科技作为“OpenHarmony百人代码贡献单位”“核心
    的头像 发表于 06-13 11:07 532次阅读

    OpenHarmony应用模型的构成要素分析

    信息在编译构建、分发和运行阶段分别提供给编译工具、应用市场和操作系统使用。 *附件:OpenHarmony应用模型的构成要素分析.docx
    发表于 04-24 10:26