準備HarmonyOS開發環境

来源:https://www.cnblogs.com/depeng8899/archive/2023/09/01/17671364.html
-Advertisement-
Play Games

本章詳細指導了你如何安裝 HarmonyOS SDK、配置開發環境、創建 HarmonyOS 項目。現在,你已經準備好開始 HarmonyOS 開發了。 ...


引言

在開始 HarmonyOS 開發之前,需要準備好開發環境。本章將詳細指導你如何安裝 HarmonyOS SDK、配置開發環境、創建 HarmonyOS 項目。

目錄

    1. 安裝 HarmonyOS SDK
    1. 配置開發環境
    1. 創建 HarmonyOS 項目
    1. 總結

1. 安裝 HarmonyOS SDK

HarmonyOS SDK 是開發 HarmonyOS 應用的軟體開發工具包。它包括了編譯器、模擬器、調試器等工具。

1.1 下載 HarmonyOS SDK

  • 打開華為 HarmonyOS 官方網站
  • 跳轉到開發者社區。
  • 在開發者社區,找到 HarmonyOS SDK 的下載頁面
  • 選擇適合你的操作系統的版本。
  • 點擊“下載”按鈕,下載 HarmonyOS SDK。

1.2 安裝 HarmonyOS SDK

  • 打開下載的 HarmonyOS SDK 安裝包。
  • 雙擊安裝文件,啟動安裝程式。
  • 按照安裝程式的指南,選擇安裝路徑,接受許可協議。
  • 點擊“安裝”按鈕,開始安裝 HarmonyOS SDK。
  • 安裝完成後,點擊“完成”按鈕。

2. 配置開發環境

配置開發環境是一個重要的步驟,它會影響到你的開發效率。

2.1 配置 JDK

  • 確保你的電腦上已經安裝了 JDK。如果沒有安裝,請先安裝 JDK。
  • 配置 JAVA_HOME 環境變數。
    • 打開“控制面板”。
    • 點擊“系統”。
    • 點擊“高級系統設置”。
    • 點擊“環境變數”。
    • 在“系統變數”中,點擊“新建”。
    • 輸入“變數名”為 JAVA_HOME。
    • 輸入“變數值”為 JDK 的安裝路徑。
    • 點擊“確定”按鈕。

2.2 配置開發環境

  • 運行已安裝的DevEco Studio,首次使用,請選擇Do not import settings,單擊OK。
  • 進入DevEco Studio操作嚮導頁面,修改npm registry,DevEco Studio已預置對應的倉(預設的npm倉,可能出現部分開發者無法訪問或訪問速度緩慢的情況),直接單擊Start using DevEco Studio進入下一步。
  • 設置Node.js信息,可以指定本地已安裝的Node.js(Node.js版本要求為v14.19.1及以上,且低於v15.0.0;對應的npm版本要求為6.14.16及以上,且低於7.0.0版本);如果本地沒有合適的版本,可以選擇Download按鈕,線上下載Node.js。本示例以下載Node.js為例,選擇下載源和存儲路徑後,單擊Next進入下一步。等待Node.js安裝完成,然後單擊Finish進入下一步。
  • 在SDK Components Setup界面,設置OpenHarmony SDK和HarmonyOS SDK存儲路徑,單擊Next進入下一步。
  • 在彈出的SDK下載信息頁面,單擊Next,併在彈出的License Agreement視窗,閱讀License協議,需同意License協議後(需同時接受OpenHarmony SDK和HarmonyOS SDK的License協議),單擊Next開始下載SDK。
  • 等待SDK下載完成後,單擊Finish,完成SDK的下載,界面會進入到DevEco Studio歡迎頁。
  • 配置HDC工具環境變數(Windows添加環境變數,添加HDC埠變數名為:HDC_SERVER_PORT,變數值可設置為任意未被占用的埠,如7035)

2.3 配置模擬器

  • 打開 HarmonyOS SDK。
  • 在 SDK 中,找到模擬器的配置頁面。
  • 按照配置頁面的指南,配置模擬器。

2.4 配置 IDE

  • 打開 HarmonyOS SDK。
  • 在 SDK 中,找到 IDE 的配置頁面。
  • 按照配置頁面的指南,配置 IDE。

3. 創建 HarmonyOS 項目

創建 HarmonyOS 項目是開始開發的第一步。

3.1 選擇項目模板

  • 打開 HarmonyOS SDK。
  • 在 SDK 中,找到“創建項目”頁面。
  • 在“創建項目”頁面中,選擇一個項目模板。

3.2 配置項目

  • 輸入項目的名稱。
  • 輸入項目的包名。
  • 選擇項目的目標平臺。

3.3 創建項目

  • 點擊“創建”按鈕。
  • HarmonyOS SDK 會自動創建項目。

3.4 工程目錄結構

  • entry:HarmonyOS工程模塊,編譯構建生成一個HAP包。
    • src > main > ets:用於存放ArkTS源碼。
    • src > main > ets > MainAbility:應用/服務的入口。
    • src > main > ets > pages:應用/服務包含的頁面。
    • src > main > resources:用於存放應用/服務所用到的資源文件,如圖形、多媒體、字元串、佈局文件等。關於資源文件的詳細說明請參考資源文件的分類。
    • src > main > config.json:模塊配置文件。主要包含HAP包的配置信息、應用/服務在具體設備上的配置信息以及應用/服務的全局配置信息。具體的配置文件說明,詳見配置文件說明(JS/ArkTS)。
    • build-profile.json5:當前的模塊信息 、編譯信息配置項,包括buildOption、targets配置等。
    • hvigorfile.ts:模塊級編譯構建任務腳本,開發者可以自定義相關任務和代碼實現。
  • build-profile.json5:應用級配置信息,包括簽名、產品配置等。
  • hvigorfile.ts:應用級編譯構建任務腳本。
  • 構建頁面:點擊“entry > src > main > ets > pages”,打開“index.ets”文件
@Entry
@Component
struct Index {
  @State message: string = 'Hello World'

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button() {
          Text('Next').fontSize(30).fontWeight(FontWeight.Bold)
        }.type(ButtonType.Capsule).margin({top:20}).backgroundColor('#0D9FFB').width('40%').height('5%')
      }
      .width('100%')
    }
    .height('100%')
  }
}

4. 總結

本章詳細指導了你如何安裝 HarmonyOS SDK、配置開發環境、創建 HarmonyOS 項目。現在,你已經準備好開始 HarmonyOS 開發了。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • iostat 是一個常用的工具,可以提供關於磁碟活動的詳細統計信息。通過運行命令 iostat -x 1 可以實時監測磁碟的使用情況,其中 %util 列就表示磁碟的繁忙度,數值越高表示磁碟越繁忙。 ...
  • **內核版本5.4** 在使用spi匯流排接上了一個小網卡,實現了我們開發板對網路的訪問之後,我還想接一個小的[spi屏幕 1.44寸款](https://item.taobao.com/item.htm?spm=a1z09.2.0.0.731e2e8dAkrB01&id=571409957622&_ ...
  • 本文旨在探討進程間通信的重要性,並介紹了不同的通信機制,如管道、消息隊列、共用記憶體、信號量、信號和套接字。通過理解這些通信機制的特點和應用場景,可以更好地實現進程間的高效數據共用。同時,本文還強調了同步和互斥機制的重要性,以確保數據的一致性和正確性。最後,還介紹了套接字作為一種跨網路和同一主機上進程... ...
  • linux主要目錄詳解 這裡首先說一句:Linux一切皆文件,即Linux世界中的所有、任意、一切東西都可以通過文件的方式訪問、管理。 /bin 系統有很多放置可執行文件的目錄, 但/bin比較特殊。 因為/bin放置的是在單人維護模式下還能夠被操作的指令。 在/bin下麵的指令可以被root與一般 ...
  • 什麼是GTID? GTID (Global Transaction ID) 是對於一個已提交事務的編號,並且是一個全局唯一的編號。 GTID 實際上 是由UUID+TID 組成的。其中 UUID 是一個 MySQL 實例的唯一標識。TID代表了該實例上已經提交的事務數量,並且隨著事務提交單調遞增。 ...
  • 設想一下,作為一個開發人員,你現在所在的公司有一套線上的 Hadoop 集群。A部門經常做一些定時的 BI 報表,B部門則經常使用軟體做一些臨時需求。那麼他們肯定會遇到同時提交任務的場景,這個時候到底應該如何分配資源滿足這兩個任務呢?是先執行A的任務,再執行B的任務,還是同時跑兩個? 如果你存在上述 ...
  • 從Oracle 10g 開始,Oracle提供了鎖定/解鎖表統計信息功能,它的目的是阻止資料庫自動收集統計信息,防止可能會產生/出現的糟糕的計劃。它對於數據頻繁更改的Volatile Tables最有用,因為Volatile Tables的某些數據集可能會生成糟糕的計劃。 官方的介紹如下: Prev ...
  • 我喜歡Kusto (或商用版本 Azure Data Explorer,簡稱 ADX) 是大家可以有目共睹的,之前還專門寫過這方面的書籍,請參考 [大數據分析新玩法之Kusto寶典](https://kusto.book.xizhang.com), 很可能在今年還會推出第二季,正在醞釀題材和場景中。 ...
一周排行
    -Advertisement-
    Play Games
  • WPF本身不支持直接的3D繪圖,但是它提供了一些用於實現3D效果的高級技術。 如果你想要在WPF中進行3D繪圖,你可以使用兩種主要的方法: WPF 3D:這是一種在WPF應用程式中創建3D圖形的方式。WPF 3D提供了一些基本的3D形狀(如立方體、球體和錐體)以及一些用於控制3D場景和對象的工具(如 ...
  • 一、XML概述 XML(可擴展標記語言)是一種用於描述數據的標記語言,旨在提供一種通用的方式來傳輸和存儲數據,特別是Web應用程式中經常使用的數據。XML並不預定義標記。因此,XML更加靈活,並且可以適用於廣泛的應用領域。 XML文檔由元素(element)、屬性(attribute)和內容(con ...
  • 從今年(2023)三月份開始,Github開始強制用戶開啟兩步驗證2FA(雙因數)登錄驗證,毫無疑問,是出於安全層面的考慮,畢竟Github賬號一旦被盜,所有代碼倉庫都會毀於一旦,關於雙因數登錄的必要性請參見:別讓你的伺服器(vps)淪為肉雞(ssh暴力破解),密鑰驗證、雙向因數登錄值得擁有。 雙因 ...
  • 第一題 下列代碼輸入什麼? public class Test { public static Test t1 = new Test(); { System.out.println("blockA"); } static { System.out.println("blockB"); } publi ...
  • 本文主要涉及的問題:用ElementTree和XPath讀寫XML文件;解決ElementTree新增元素後再寫入格式不統一的問題;QTableWidget單元格設置控制項 ...
  • QStandardItemModel 類作為標準模型,主打“類型通用”,前一篇水文中,老周還沒提到樹形結構的列表,本篇咱們就好好探討一下這貨。 還是老辦法,咱們先做示例,然後再聊知識點。下麵這個例子,使用 QTreeView 組件來顯示數據,使用的列表模型比較簡單,只有一列。 #include <Q ...
  • 一、直充內充(充值方式) 直充: 包裝套餐直接充值到上游API系統。【PID/Smart】 (如:支付寶、微信 話費/流量/語音/簡訊 等 充值系統)。 內充(套餐打包常見物聯卡系統功能): 套餐包裝 適用於不同類型套餐 如 流量、簡訊、語音 等。 (目前已完善流量邏輯) 二、套餐與計費產品 計費產 ...
  • 在前面幾天中,我們學習了Dart基礎語法、可迭代集合,它們是Flutter應用研發的基本功。今天,我們繼續學習Flutter應用另一個必須掌握知識點:非同步編程(即Future和async/await)。它類似於Java中的FutureTask、JavaScript中的Promise。它是後續Flut... ...
  • 針對改動範圍大、影響面廣的需求,我通常會問上線了最壞情況是什麼?應急預案是什麼?你帶開關了嗎?。當然開關也是有成本的,接下來本篇跟大家一起交流下高頻發佈支撐下的功能開關技術理論與實踐結合的點點滴滴。 ...
  • 1.d3.shuffle D3.shuffle() 方法用於將數組中的元素隨機排序。它使用 Fisher–Yates 洗牌演算法,該演算法是無偏的,具有最佳的漸近性能(線性時間和常數記憶體)。 D3.shuffle() 方法的語法如下: d3.shuffle(array, [start, end]) 其中 ...