HarmonyOS學習路之開發(fā)基礎知識——應用基礎知識

用戶應用程序

用戶應用程序泛指運行在設備的操作系統(tǒng)之上,為用戶提供特定服務的程序,簡稱“應用”。
在HarmonyOS上運行的應用,有兩種形態(tài):

  • 傳統(tǒng)方式的需要安裝的應用。
  • 提供特定功能,免安裝的應用(即原子化服務)。

用戶應用程序包結(jié)構(gòu)

HarmonyOS的用戶應用程序包以APP Pack(Application Package)形式發(fā)布,它是由一個或多個HAP(HarmonyOS Ability Package)以及描述每個HAP屬性的pack.info組成。HAP是Ability的部署包,HarmonyOS應用代碼圍繞Ability組件展開。
一個HAP是由代碼、資源、第三方庫及應用配置文件組成的模塊包可分為entry和feature兩種模塊類型,如圖1所示。

  • entry:應用的主模塊。一個APP中,對于同一設備類型必須有且只有一個entry類型的HAP,可獨立安裝運行。
  • feature:應用的動態(tài)特性模塊。一個APP可以包含一個或多個feature類型的HAP,也可以不含。只有包含Ability的HAP才能夠獨立運行。
    圖1 APP邏輯視圖


    在這里插入圖片描述

Ability

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

庫文件

庫文件是應用依賴的第三方代碼(例如so、jar、bin、har等二進制文件),存放在libs目錄。

資源文件

應用的資源文件(字符串、圖片、音頻等)存放于resources目錄下,便于開發(fā)者使用和維護,詳見資源文件的分類。

配置文件

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

pack.info

描述應用軟件包中每個HAP的屬性,由IDE編譯生成,應用市場根據(jù)該文件進行拆包和HAP的分類存儲。HAP的具體屬性包括:

  • delivery-with-install: 表示該HAP是否支持隨應用安裝。“true”表示支持隨應用安裝;“false”表示不支持隨應用安裝。
  • name:HAP文件名。
  • module-type:模塊類型,entry或feature。
  • device-type:表示支持該HAP運行的設備類型。

HAR

HAR(HarmonyOS Ability Resources)可以提供構(gòu)建應用所需的所有內(nèi)容,包括源代碼、資源文件和config.json文件。HAR不同于HAP,HAR不能獨立安裝運行在設備上,只能作為應用模塊的依賴項被引用。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容