久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > 鴻蒙系統(tǒng)系列教程6-鴻蒙系統(tǒng)項(xiàng)目結(jié)構(gòu)解析

鴻蒙系統(tǒng)系列教程6-鴻蒙系統(tǒng)項(xiàng)目結(jié)構(gòu)解析

來(lái)源:千鋒教育
發(fā)布人:小千
時(shí)間: 2021-07-14 09:15:00 1626225300

      鴻蒙系統(tǒng)一經(jīng)推出就受到了廣泛的關(guān)注,更是不少開(kāi)發(fā)者都想提前學(xué)習(xí)鴻蒙軟件開(kāi)發(fā),提前布局,所以小千為大家整理了一系列的鴻蒙開(kāi)發(fā)教程,今天我們介紹鴻蒙系統(tǒng)的項(xiàng)目結(jié)構(gòu)邏輯,喜歡的話記得分享收藏一下。

      一、用戶(hù)應(yīng)用程序包結(jié)構(gòu)

      HarmonyOS的用戶(hù)應(yīng)用程序包以APP Pack(Application Package)形式發(fā)布,它是由一個(gè)或多個(gè)HAP(HarmonyOS Ability Package)以及描述每個(gè)HAP屬性的http://pack.info組成。HAP是Ability的部署包,HarmonyOS應(yīng)用代碼圍繞Ability組件展開(kāi)。

      一個(gè)HAP是由代碼、資源、第三方庫(kù)及應(yīng)用配置文件組成的模塊包,可分為entry和feature兩種模塊類(lèi)型,如圖1所示。

千鋒IT鴻蒙教程1

      entry:應(yīng)用的主模塊。一個(gè)APP中,對(duì)于同一設(shè)備類(lèi)型必須有且只有一個(gè)entry類(lèi)型的HAP,可獨(dú)立安裝運(yùn)行。

      feature:應(yīng)用的動(dòng)態(tài)特性模塊。一個(gè)APP可以包含一個(gè)或多個(gè)feature類(lèi)型的HAP,也可以不含。只有包含Ability的HAP才能夠獨(dú)立運(yùn)行。

      Ability:Ability是應(yīng)用所具備的能力的抽象,一個(gè)應(yīng)用可以包含一個(gè)或多個(gè)Ability。Ability分為兩種類(lèi)型:FA(Feature Ability)和PA(Particle Ability)。FA/PA是應(yīng)用的基本組成單元,能夠?qū)崿F(xiàn)特定的業(yè)務(wù)功能。FA有UI界面,而PA無(wú)UI界面。

      庫(kù)文件:庫(kù)文件是應(yīng)用依賴(lài)的第三方代碼(例如so、jar、bin、har等二進(jìn)制文件),存放在libs目錄。

      資源文件:應(yīng)用的資源文件(字符串、圖片、音頻等)存放于resources目錄下,便于開(kāi)發(fā)者使用和維護(hù)。

      配置文件:配置文件 (config.json) 是應(yīng)用的Ability信息,用于聲明應(yīng)用的Ability,以及應(yīng)用所需權(quán)限等信息。

      二、程序目錄結(jié)構(gòu)

千鋒IT鴻蒙教程2

      首先有一個(gè)entry目錄,結(jié)合上篇的內(nèi)容,我們知道一個(gè)應(yīng)用是由一個(gè)或多個(gè)Hap包所組成的,Hap包又可以分為entry類(lèi)型和feature類(lèi)型,每個(gè)Hap包由:代碼、資源、第三方庫(kù)及應(yīng)用配置文件組成。所以我們代碼中的entry目錄其實(shí)就一個(gè)應(yīng)用的Hap包,它的類(lèi)型的entry類(lèi)型的Hap包。一個(gè)Hap包由代碼、資源、第三方庫(kù)及應(yīng)用配置文件組成,接著我們來(lái)看這些資源,代碼等都分布在entry包的哪里。

      在src/main/java下以包名命名的文件夾內(nèi)分布著Java代碼。這里的代碼可以用來(lái)創(chuàng)建布局,動(dòng)態(tài)調(diào)整布局以及為交互提供支撐服務(wù)。和java文件夾同級(jí)的resources目錄下分布應(yīng)用資源,該目錄的base目錄下,按資源用途又分為多個(gè)文件夾資源:

      element:表示元素資源,該文件夾下主要存放json格式的文件,主要用來(lái)表示 字符串、顏色值、布爾值等,可以在其他地方被引用。

      graphic:表示可繪制資源。用xml文件來(lái)表示,比如我們項(xiàng)目中設(shè)置的 圓角按鈕、按鈕顏色等都是通過(guò)引用這里的資源來(lái)統(tǒng)一管理的。

      layout:表示布局資源,用xml文件來(lái)表示,比如頁(yè)面的布局資源,都放在這里。

      media:表示媒體資源,包括圖片、音頻、視頻等非文本格式的文件。

      config.json項(xiàng)目配置文件:每一個(gè)hap包下都包含了該hap包的配置信息,這個(gè)配置文件位于:entry/src/main/目錄下,由工具幫我們生成,命名為config.json,harmonyOS應(yīng)用配置采用json格式的形式。下面我們來(lái)看一下這個(gè)配置文件中的內(nèi)容,并簡(jiǎn)要介紹一下配置的作用。該配置文件中,主要有三個(gè)模塊,如下所示:

      app:表示應(yīng)用的全局配置信息。同一個(gè)應(yīng)用的不同HAP包的“app”配置必須保持一致。

      deviceConfig:表示應(yīng)用在具體設(shè)備上的配置信息。

      module:表示HAP包的配置信息。該標(biāo)簽下的配置只對(duì)當(dāng)前HAP包生效。

      bundleName:表示應(yīng)用的包名,用于標(biāo)識(shí)應(yīng)用的唯一性。通常采用反轉(zhuǎn)的域名。

      vendor:表示開(kāi)發(fā)應(yīng)用的廠商。

      version:code表示內(nèi)部版本號(hào),用于系統(tǒng)管理版本使用,對(duì)用戶(hù)不可見(jiàn),name表示應(yīng)用的版本號(hào),用于向用戶(hù)呈現(xiàn)。

      apiVersion:包含三個(gè)選項(xiàng),1、compatible:表示應(yīng)用運(yùn)行需要的API最小版本。2、target:表示應(yīng)用運(yùn)行需要的API目標(biāo)版本。3、releaseType:表示應(yīng)用運(yùn)行需要的API目標(biāo)版本的類(lèi)型,取值為“CanaryN”、“BetaN”或者“Release”,其中,N代表大于零的整數(shù)。

      Canary:受限發(fā)布的版本。

      Beta:公開(kāi)發(fā)布的Beta版本。

      Release:公開(kāi)發(fā)布的正式版本。

      以上就是這一期的鴻蒙系統(tǒng)項(xiàng)目結(jié)構(gòu)解析的教程了,最后歡迎對(duì)鴻蒙開(kāi)發(fā)感興趣的同學(xué)來(lái)到千鋒了解一下我們的鴻蒙開(kāi)發(fā)培訓(xùn)課程,全程名師面授確保教學(xué)質(zhì)量,現(xiàn)在咨詢(xún)更有海量?jī)?yōu)惠和免費(fèi)的學(xué)習(xí)教程視頻可以領(lǐng)取,趕緊找在線老師了解一下吧。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專(zhuān)屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
什么是云管理平臺(tái)

什么是云管理平臺(tái)?云管理平臺(tái)(Cloud Management Platform,CMP)是由Gartner提出的企業(yè)云戰(zhàn)略中的一種產(chǎn)品形態(tài),是提供對(duì)公有云、私有云和混合...詳情>>

2023-12-04 11:10:46
Docker的核心底層技術(shù)有哪些

Docker的核心底層技術(shù)有哪些?Docker可以運(yùn)行在64位Linux發(fā)行版以及蘋(píng)果和微軟系統(tǒng)上,但后兩者只能使用虛擬機(jī)作為宿主機(jī)。所有的可運(yùn)行的容器...詳情>>

2023-12-04 06:27:25
什么是包過(guò)濾技術(shù)

什么是包過(guò)濾技術(shù)?包過(guò)濾(Packet Filtering)技術(shù)是根據(jù)流經(jīng)防火墻的數(shù)據(jù)包的特征,依據(jù)預(yù)先定義好的規(guī)則,決定是否允許數(shù)據(jù)包通過(guò)的技術(shù)。它對(duì)...詳情>>

2023-12-04 03:40:45
什么是網(wǎng)絡(luò)安全掃描技術(shù)

什么是網(wǎng)絡(luò)安全掃描技術(shù)?物聯(lián)網(wǎng)的網(wǎng)絡(luò)安全掃描技術(shù)是網(wǎng)絡(luò)安全領(lǐng)域的重要技術(shù)之一,是一種遠(yuǎn)程檢測(cè)目標(biāo)網(wǎng)絡(luò)或本地主機(jī)安全性脆弱點(diǎn)的技術(shù),是為...詳情>>

2023-12-04 03:07:25
IaaS的優(yōu)勢(shì)

IaaS的優(yōu)勢(shì)。與在本地計(jì)算中心部署資源相比,IaaS具有強(qiáng)大的敏捷性和高度的可擴(kuò)展性。企業(yè)在內(nèi)部部署一個(gè)新的虛擬機(jī)往往需要幾天甚至一周以上的...詳情>>

2023-12-04 02:17:25