0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

openharmony代碼獲取分析

姚小熊27 ? 來源:HarmonyOS技術(shù)社區(qū) ? 作者:HarmonyOS技術(shù)社區(qū) ? 2021-06-23 16:30 ? 次閱讀

本文檔將介紹如何獲取OpenHarmony源碼并說明OpenHarmony的源碼目錄結(jié)構(gòu)。OpenHarmony的代碼以組件的形式開放,開發(fā)者可以通過如下其中一種方式獲取:

獲取方式1:從鏡像站點下載壓縮文件(推薦

獲取方式2:從hpm網(wǎng)站組件式獲取。通過HPM,查找滿足需求的解決方案,挑選/裁剪組件后下載。

獲取方式3:用包管理器命令行工具獲取。通過HPM的hpm-cli命令行工具,執(zhí)行命令下載。

獲取方式4:從代碼倉庫獲取。通過repo或git工具從代碼倉庫中下載。

獲取方式1:從鏡像站點獲取

為了獲得更好的下載性能,您可以選擇從以下站點的鏡像庫獲取源碼或者對應(yīng)的解決方案。

獲取方式2:從hpm網(wǎng)站組件式獲取

適用場景

對于剛接觸OpenHarmony的新用戶,希望能夠參考一些示例解決方案從而進行快速開發(fā)。可以在HPM獲取推薦的解決方案,以此為基礎(chǔ),增加或裁剪部分組件,快速定制系統(tǒng)。

操作步驟

1.查找合適的解決方案組件包。

打開包管理頁面HPM,設(shè)定搜索的對象為“解決方案“,如下圖所示。

自搜索框輸入關(guān)鍵字搜索,如“camera”。

結(jié)果中顯示匹配的解決方案,可以進一步根據(jù)組件類別等過濾條件(如:適配的開發(fā)板,內(nèi)核)精確篩選。

查找合適的解決方案,點擊查看解決方案詳情介紹。

2.定制解決方案組件包。

仔細閱讀解決方案的說明,以了解該解決方案的使用場景、特性、使用方法以及如何進行定制化,如下圖所示。

點擊「直接下載」,將解決方案下載到本地。

點擊「定制組件」,將對解決方案包含的組件進行定制。

3.定制組件。

3.1進入解決方案定制頁面,如下圖所示。

3.2通過關(guān)閉開關(guān)移除可選組件,或者通過“添加組件”增加新的組件。

3.2在右邊填寫您的項目基本信息,包括名稱、版本、描述等信息。

3.4點擊“下載“,系統(tǒng)會根據(jù)您的選擇,生成相應(yīng)的OpenHarmony代碼結(jié)構(gòu)文件(如name.zip),保存至本地文件。

下載的壓縮文件并未包含源代碼的原始文件,可以在IDE中導(dǎo)入下載的壓縮包,解壓后執(zhí)行hpm的安裝指令(hpm install),才會將所需要的組件全部下載下來。

下載的組件存在工程目錄下的ohos_bundles文件夾中。

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

適用場景

用戶已通過組件式獲取的方式獲取源碼,需要對源碼中的某個或某幾個組件進行獨立升級。

用戶已經(jīng)比較熟悉OpenHarmony系統(tǒng)的開發(fā)并且熟練掌握命令行工具的使用。

準備

通過命令行獲取,需要先安裝Node.js和hpm命令行工具,安裝步驟如下:

安裝Node.js。

官網(wǎng)下載并在本地安裝Node.js.

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

2.通過Node.js自帶的npm安裝hpm命令行工具。

打開CMD,執(zhí)行以下命令:

npm install -g @ohos/hpm-cli1.

3.安裝完成后執(zhí)行如下命令,顯示hpm版本,即安裝成功。

hpm -V 或 hpm --version1.

4.如果升級hpm的版本,請執(zhí)行如下命令:

npm update -g @ohos/hpm-cli1.

操作

接下來將組件添加到開發(fā)項目中,假定要獲取的組件名為@ohos/demo,具體操作如下:

1.進入開發(fā)目錄,執(zhí)行如下命令,采用默認模板創(chuàng)建一個開發(fā)項目。

hpm init -t default1.

2.執(zhí)行如下命令,安裝組件@ohos/demo

hpm install @ohos/demo1.

3.工具會自動從服務(wù)器下載所有依賴的組件,下載成功則顯示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的穩(wěn)定分支建立自己的基線,分發(fā)下游客戶。

已經(jīng)完成自身軟件與OpenHarmony的對接,需要進行OpenHarmony官方認證

芯片/模組/app通過OpenHarmony官方認證后,貢獻代碼到OpenHarmony生態(tài)。

修復(fù)OpenHarmony的問題。

學(xué)習(xí)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.

復(fù)制

4.安裝碼云repo工具,可以執(zhí)行如下命令。

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,選擇需要克隆的代碼倉庫,執(zhí)行命令,如:

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

源碼目錄簡介

下表是OpenHarmony源碼的目錄及簡單說明:

責任編輯:YYX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4809

    瀏覽量

    68823
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3731

    瀏覽量

    16436
收藏 人收藏

    評論

    相關(guān)推薦

    OpenHarmony程序分析框架論文入選ICSE 2025

      近日,ICSE 2025軟件工程實踐Track放榜,面向OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)的ArkTS程序分析基礎(chǔ)框架--方舟程序分析
    的頭像 發(fā)表于 01-02 13:41 ?159次閱讀
    <b class='flag-5'>OpenHarmony</b>程序<b class='flag-5'>分析</b>框架論文入選ICSE 2025

    STM32連接機智云,代碼移植,NTP實時時間獲取(二)

    如何利用NTP(網(wǎng)絡(luò)時間協(xié)議)獲取精確的實時時間,并將其集成到我們的STM32應(yīng)用中。本文將涵蓋以下幾個方面:1.代碼編寫準備:我們將分析所需的開發(fā)環(huán)境配置、庫文件和工
    的頭像 發(fā)表于 11-20 01:02 ?393次閱讀
    STM32連接機智云,<b class='flag-5'>代碼</b>移植,NTP實時時間<b class='flag-5'>獲取</b>(二)

    【龍芯2K0300蜂鳥板試用】OpenHarmony代碼

    收到龍芯2K0300蜂鳥開發(fā)板后,對開發(fā)板做了一些了解和研究,現(xiàn)將OpenHarmony代碼提供給大家測試,也希望大家能更多的認識龍芯2K0300蜂鳥開發(fā)板,下面先簡單介紹一下這塊開發(fā)板。 廣東
    發(fā)表于 09-18 11:42

    基于ArkTS語言的OpenHarmony APP應(yīng)用開發(fā):HelloOpenharmony

    1、程序簡介該程序是基于OpenHarmony標準系統(tǒng)編寫的UI應(yīng)用類:HelloOpenHarmony。本案例是基于API9接口開發(fā)。本案例已在OpenHarmony凌蒙派-RK3568開發(fā)
    的頭像 發(fā)表于 09-15 08:09 ?442次閱讀
    基于ArkTS語言的<b class='flag-5'>OpenHarmony</b> APP應(yīng)用開發(fā):Hello<b class='flag-5'>Openharmony</b>

    400萬!深開鴻OpenHarmony主倉代碼貢獻量再創(chuàng)里程碑!

    2024年7月8日,據(jù)OpenAtomOpenHarmony(以下簡稱“OpenHarmony”)官網(wǎng)顯示,深開鴻在OpenHarmony社區(qū)主倉代碼貢獻總量超過400萬行,在華為以外
    的頭像 發(fā)表于 07-09 08:33 ?376次閱讀
    400萬!深開鴻<b class='flag-5'>OpenHarmony</b>主倉<b class='flag-5'>代碼</b>貢獻量再創(chuàng)里程碑!

    OpenHarmony之開機優(yōu)化

    OpenHarmony已經(jīng)支持了Bootchart工具,我們可以直接使用Bootchart工具,Bootchart工具介紹如下: 概述 Bootchart是一個用于系統(tǒng)啟動過程性能分析的開源軟件工具
    發(fā)表于 07-01 16:39

    【開源鴻蒙】下載OpenHarmony 4.1 Release源代碼

    本文介紹了如何下載開源鴻蒙(OpenHarmony)操作系統(tǒng) 4.1 Release版本的源代碼,該方法同樣可以用于下載OpenHarmony最新開發(fā)版本(master分支)或者4.0 Release、3.2 Release等發(fā)
    的頭像 發(fā)表于 04-27 23:16 ?991次閱讀
    【開源鴻蒙】下載<b class='flag-5'>OpenHarmony</b> 4.1 Release源<b class='flag-5'>代碼</b>

    HarmonyOS開發(fā):【基于命令行(獲取源碼)】

    在Ubuntu環(huán)境下通過以下步驟獲取OpenHarmony源碼。
    的頭像 發(fā)表于 04-25 22:08 ?421次閱讀
    HarmonyOS開發(fā):【基于命令行(<b class='flag-5'>獲取</b>源碼)】

    鴻蒙OpenHarmony【標準系統(tǒng)編寫“Hello World”程序】 (基于RK3568開發(fā)板)

    源碼],創(chuàng)建RK3568開發(fā)板的源碼工程。 示例目錄 拉取openharmony項目代碼,在代碼根目錄創(chuàng)建sample子系統(tǒng)文件夾,在子系統(tǒng)目錄下創(chuàng)建hello部件文件夾,hello文件夾中創(chuàng)建
    的頭像 發(fā)表于 04-24 17:32 ?892次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【標準系統(tǒng)編寫“Hello World”程序】 (基于RK3568開發(fā)板)

    鴻蒙OpenHarmony【創(chuàng)建工程并獲取源碼】

    在通過DevEco Device Tool創(chuàng)建OpenHarmony工程時,可自動下載相應(yīng)版本的OpenHarmony源碼。
    的頭像 發(fā)表于 04-19 21:40 ?397次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【創(chuàng)建工程并<b class='flag-5'>獲取</b>源碼】

    深開鴻正式升級成為OpenHarmony項目群A類捐贈人

    近日,深開鴻作為OpenHarmony核心共建單位、OpenHarmony生態(tài)委員會委員單位、OpenHarmony代碼Top 10貢獻單位,通過了開放原子開源基金會
    的頭像 發(fā)表于 04-18 09:40 ?657次閱讀
    深開鴻正式升級成為<b class='flag-5'>OpenHarmony</b>項目群A類捐贈人

    鴻蒙開發(fā)學(xué)習(xí):【OpenHarmony HAR】

    OpenHarmony js/ts三方庫使用的是OpenHarmony靜態(tài)共享包,即HAR(Harmony Archive),可以包含js/ts代碼、c++庫、資源和配置文件。通過HAR,可以實現(xiàn)
    的頭像 發(fā)表于 03-18 16:27 ?783次閱讀

    [鴻蒙]OpenHarmony4.0的Rust開發(fā)

    OpenHarmony 為了集成 C/C++ 代碼和提升編譯速度,使用了 GN + Ninja 的編譯構(gòu)建系統(tǒng)。GN 的構(gòu)建語言簡潔易讀,Ninja 的匯編級編譯規(guī)則直接高效。 為了在 OpenHarmony
    的頭像 發(fā)表于 02-26 17:28 ?933次閱讀
    [鴻蒙]<b class='flag-5'>OpenHarmony</b>4.0的Rust開發(fā)

    【鴻蒙】OpenHarmony 4.0藍牙代碼結(jié)構(gòu)簡析

    OpenHarmony 4.0藍牙代碼結(jié)構(gòu)簡析前言 OpenHarmony 4.0上藍牙倉和目錄結(jié)構(gòu)進行一次較大整改,本文基于4.0以上版本對藍牙代碼進行
    的頭像 發(fā)表于 02-26 16:08 ?1628次閱讀
    【鴻蒙】<b class='flag-5'>OpenHarmony</b> 4.0藍牙<b class='flag-5'>代碼</b>結(jié)構(gòu)簡析

    鴻蒙開發(fā)-OpenHarmony輕量系統(tǒng)之獲取當?shù)貢r間

    在輕量設(shè)備里面,我們常常需要獲取本地時間,用于時間顯示,log記錄,幫助RTC芯片糾正時間等等。我們在之前設(shè)計了一個智慧時鐘,需要使用到本地當前時間,因此本篇文章想在OpenHarmony上實現(xiàn)SNTP獲取本地時間,并將此功能集
    的頭像 發(fā)表于 01-22 17:48 ?1124次閱讀
    鴻蒙開發(fā)-<b class='flag-5'>OpenHarmony</b>輕量系統(tǒng)之<b class='flag-5'>獲取</b>當?shù)貢r間