鴻蒙OS HarmonyOS工程介紹

2020-09-19 10:33 更新

HarmonyOS APP工程結(jié)構(gòu)

在進(jìn)行 HarmonyOS 應(yīng)用開發(fā)前,您應(yīng)該掌握 HarmonyOS 應(yīng)用的邏輯結(jié)構(gòu)。

HarmonyOS 應(yīng)用發(fā)布形態(tài)為 APP Pack (Application Package,簡(jiǎn)稱 APP),它是由一個(gè)或多個(gè) HAP(HarmonyOS Ability Package)包以及描述 APP Pack 屬性的 pack.info 文件組成。

一個(gè) HAP 在工程目錄中對(duì)應(yīng)一個(gè) Module,它是由代碼、資源、第三方庫(kù)及應(yīng)用清單文件組成,可以分為 Entry 和 Feature 兩種類型。

  • Entry:應(yīng)用的主模塊。一個(gè) APP 中,對(duì)于同一設(shè)備類型必須有且只有一個(gè) entry 類型的HAP,可獨(dú)立安裝運(yùn)行。
  • Feature:應(yīng)用的動(dòng)態(tài)特性模塊。一個(gè) APP 可以包含一個(gè)或多個(gè) feature 類型的 HAP,也可以不含。

HAP 是 Ability 的部署包,HarmonyOS 應(yīng)用代碼圍繞 Ability 組件展開,它是由一個(gè)或多個(gè) Ability 組成。Ability 分為兩種類型:FA(Feature Ability)和 PA(Particle Ability)。FA/PA 是應(yīng)用的基本組成單元,能夠?qū)崿F(xiàn)特定的業(yè)務(wù)功能。FA 有 UI 界面,而 PA 無 UI 界面。

點(diǎn)擊放大

工程目錄結(jié)構(gòu)

Java工程目錄結(jié)構(gòu)

Java 工程目錄結(jié)構(gòu)如下圖所示。

img

.gradle:Gradle 配置文件,由系統(tǒng)自動(dòng)生成,一般情況下不需要進(jìn)行修改。

  • entry

:默認(rèn)啟動(dòng)模塊(主模塊),開發(fā)者用于編寫源碼文件以及開發(fā)資源文件的目錄。

  • entry>libs:用于存放 entry 模塊的依賴文件。
  • entry>.gitgnore:標(biāo)識(shí) git 版本管理需要忽略的文件。
  • entry>build.gradle:entry 模塊的編譯配置文件。
  • entry>src>main>Java:用于存放 Java 源碼。
  • entry>src>main>resources:用于存放資源文件。
  • entry>src>main>config.json:HAP 清單文件,詳細(xì)說明請(qǐng)參考config.json清單文件介紹。
  • entry>src>test:編寫測(cè)試文件的目錄。

JS工程目錄結(jié)構(gòu)

JS 工程目錄結(jié)構(gòu)如下圖所示。

img

  • pages 目錄:

pages 文件夾下可以包含 1 個(gè)或多個(gè)頁(yè)面,每個(gè)頁(yè)面都需要?jiǎng)?chuàng)建一個(gè)文件夾(如圖中的 index)。頁(yè)面文件夾下主要包含 3 種文件類型:css、js 和 hml 文件。

  • pages > index > index.hml文件:hml 文件定義了頁(yè)面的布局結(jié)構(gòu),使用到的組件,以及這些組件的層級(jí)關(guān)系。
  • pages > index > index.css文件:css 文件定義了頁(yè)面的樣式與布局,包含樣式選擇器和各種樣式屬性等。
  • pages > index > index.js文件:js 文件描述了頁(yè)面的行為邏輯,此文件里定義了頁(yè)面里所用到的所有的邏輯關(guān)系,比如數(shù)據(jù)、事件等。

  • app.js文件:全局的 JavaScript 邏輯文件和應(yīng)用的生命周期管理。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)