今天鴻蒙操做系統終於公佈了源碼,不少朋友還不太清楚如何得到鴻蒙源碼,如下是鴻蒙源碼獲取方式。感興趣的朋友趕忙扒拉下來一探究竟吧!node
源碼獲取
OpenHarmony介紹
OpenHarmony是HarmonyOS的開源版,由華爲捐贈給開放原子開源基金會(OpenAtom Foundation)開源。第一個開源版本支持在128KB~128MB設備上運行,歡迎參加開源社區一塊兒持續演進。git
代碼倉庫地址:https://openharmony.gitee.comnpm
源碼獲取概述
本文檔將介紹如何獲取OpenHarmony源碼並說明OpenHarmony的源碼目錄結構。OpenHarmony的代碼以組件的形式開放,開發者能夠經過以下其中一種方式獲取:api
- 獲取方式1:從鏡像站點下載壓縮文件(推薦)
- 獲取方式2:從hpm網站組件式獲取。經過HPM,查找知足需求的解決方案,挑選/裁剪組件後下載。
- 獲取方式3:用包管理器命令行工具獲取。經過HPM的hpm-cli命令行工具,執行命令下載。
- 獲取方式4:從代碼倉庫獲取。經過repo或git工具從代碼倉庫中下載。
獲取方式1:從鏡像站點獲取
爲了得到更好的下載性能,您能夠選擇從如下站點的鏡像庫獲取源碼或者對應的解決方案。服務器
表 1 源碼獲取路徑app
下載內容dom |
版本信息curl |
下載站點工具 |
SHA256校驗碼組件化 |
---|---|---|---|
OpenHarmony全量代碼 |
1.0 |
||
Hi3861解決方案(二進制) |
1.0 |
||
Hi3518解決方案(二進制) |
1.0 |
||
Hi3516解決方案(二進制) |
1.0 |
||
RELEASE-NOTES |
1.0 |
- |
獲取方式2:從hpm網站組件式獲取
適用場景
對於剛接觸OpenHarmony的新用戶,但願可以參考一些示例解決方案從而進行快速開發。能夠在HPM獲取推薦的解決方案,以此爲基礎,增長或裁剪部分組件,快速定製系統。
操做步驟
-
查找合適的解決方案組件包。
-
打開包管理頁面HPM,設定搜索的對象爲「解決方案「,以下圖所示。
-
自搜索框輸入關鍵字搜索,如"camera"。
-
結果中顯示匹配的解決方案,能夠進一步根據組件類別等過濾條件(如:適配的開發板,內核)精確篩選。
-
查找合適的解決方案,點擊查看解決方案詳情介紹。
圖 1 包管理
-
-
定製解決方案組件包。
- 仔細閱讀解決方案的說明,以瞭解該解決方案的使用場景、特性、使用方法以及如何進行定製化,以下圖所示。
- 點擊「直接下載」,將解決方案下載到本地。
- 點擊「定製組件」,將對解決方案包含的組件進行定製。
圖 2 解決方案示例
-
定製組件。
- 進入解決方案定製頁面,以下圖所示。
- 經過關閉開關移除可選組件,或者經過「添加組件」增長新的組件。
- 在右邊填寫您的項目基本信息,包括名稱、版本、描述等信息。
- 點擊「下載「,系統會根據您的選擇,生成相應的OpenHarmony代碼結構文件(如name.zip),保存至本地文件。
-
下載的壓縮文件並未包含源代碼的原始文件,能夠在IDE中導入下載的壓縮包,解壓後執行hpm的安裝指令(hpm install),纔會將所須要的組件所有下載下來。
-
下載的組件存在工程目錄下的ohos_bundles文件夾中。
圖 3 組件定製
-
獲取方式3:用包管理器命令行獲取
適用場景
- 用戶已經過組件式獲取的方式獲取源碼,須要對源碼中的某個或某幾個組件進行獨立升級。
- 用戶已經比較熟悉OpenHarmony系統的開發而且熟練掌握命令行工具的使用。
準備
經過命令行獲取,須要先安裝Node.js和hpm命令行工具,安裝步驟以下:
-
安裝Node.js。
官網下載並在本地安裝Node.js.
推薦安裝 Node.js 12.x (包含 npm 6.14.4)或更高版本 (推薦 12.13.0+)。
-
經過Node.js自帶的npm安裝hpm命令行工具。
打開CMD,執行如下命令:
npm install -g @ohos/hpm-cli
-
安裝完成後執行以下命令,顯示hpm版本,即安裝成功。
hpm -V 或 hpm --version
-
若是升級hpm的版本,請執行以下命令:
npm update -g @ohos/hpm-cli
操做
接下來將組件添加到開發項目中,假定要獲取的組件名爲@ohos/demo,具體操做以下:
-
進入開發目錄,執行以下命令,採用默認模板建立一個開發項目。
hpm init -t default
-
執行以下命令,安裝組件@ohos/demo
hpm install @ohos/demo
-
工具會自動從服務器下載全部依賴的組件,下載成功則顯示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!
獲取方式4:從代碼倉庫獲取
適用場景
-
基於OpenHarmony的穩定分支創建本身的基線,分發下游客戶。
-
已經完成自身軟件與OpenHarmony的對接,須要進行OpenHarmony官方認證。
-
芯片/模組/app經過OpenHarmony官方認證後,貢獻代碼到OpenHarmony生態。
-
修復OpenHarmony的問題。
-
學習OpenHarmony的源碼。
準備
-
註冊碼雲gitee帳號。
-
註冊碼雲SSH公鑰,請參考碼雲幫助中心的公鑰管理:https://gitee.com/help/articles/4181
-
安裝git客戶端並配置用戶信息。
git config --global user.name "yourname" git config --global user.email "your-email-address" git config --global credential.helper store
-
安裝碼雲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 requests
操做
方式一(推薦):經過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 master
源碼目錄簡介
下表是OpenHarmony源碼的目錄及簡單說明:
表 2 源碼目錄的說明
目錄名 |
描述 |
---|---|
applications |
應用程序樣例,包括wifi-iot,camera等 |
base |
基礎軟件服務子系統集&硬件服務子系統集 |
build |
組件化編譯、構建和配置腳本 |
domains |
加強軟件服務子系統集 |
drivers |
驅動子系統 |
foundation |
系統基礎能力子系統集 |
kernel |
內核子系統 |
prebuilts |
編譯器及工具鏈子系統 |
test |
測試子系統 |
third_party |
開源第三方組件 |
utils |
經常使用的工具集 |
vendor |
廠商提供的軟件 |
build.py |
編譯腳本文件 |
更多詳情查看:https://openharmony.gitee.com/openharmony/docs