App (文件格式)

鴻蒙應用軟體包,簡稱App文件或App Pack(英語:Application Package),是一種文件格式,用於鴻蒙作業系統中的應用軟體。這些文件使用「.app」作為文件擴展名來標識。[1][2]

APP
副檔名
.app,.hap
開發者華為
格式類型軟體包管理歸檔文件
作為容器
延伸自JAR

App文件作為鴻蒙作業系統的原生應用程式,可通過華為應用市場發布和安裝[3],或者通過華為快服務平台(Huawei Ability Gallery)分發「免安裝」應用程式。[4][5]

每個鴻蒙應用軟體包都包含一個或多個鴻蒙能力包(HarmonyOS Ability Package, 簡稱HAP,其文件擴展名為「.hap」)[6], 以及pack.info文件用以描述App文件屬性。[2][7][8]

大多數鴻蒙應用程式至少包含一個「Entry」類型的HAP文件作為應用程式的主要模塊,以及附加的「Feature」類型的HAP文件用於實現應用程式的功能。[7]

概述

鴻蒙應用程式以軟體包文件的形式發布,後綴為.app,類似於Android作業系統中的apkMicrosoft Windows中的appx 、Debian作業系統中的Debian軟體包等其他軟體包。

製作鴻蒙應用程式需要使用DevEco Studio等軟體開發工具來編碼,並將HAP和相關文件打包成鴻蒙軟體包。[9]

HAP文件包含資源、第三方配置文件。該文件可分為兩類模塊,即Entry模塊和Feature模塊。 HAP文件的Entry類型是主模塊,必須包含在軟體包中,而HAP文件的Feature類型則是用於展現應用程式功能的附加模塊。

此外,針對各種不同設備而構建的軟體包可以包含多個Entry類型的HAP文件。[4]

在打包成軟體包之前,HAP文件可以直接在真機或模擬器上運行,提供給開發者在開發階段調試和驗證應用軟體。[10]

開發完成後,包含簽名信息的軟體包可以通過AppGallery Connect分發到不同的設備;AppGallery Connect是用於創建、開發、分發和維護應用軟體的服務工具包。[11]

App文件結構

以階段模型為例,App文件的結構通常包含以下文件和文件夾。[7]

  • entry.hapfeature.hap :Entry類型和Feature類型的基本模塊,包含以下文件夾和文件。
    • ets文件夾:存儲代碼構建後而生成的字節碼文件。
    • libs文件夾 :存放主模塊的依賴文件。
    • resources文件夾:包含圖形、多媒體、字符串、布局等資源文件。
    • resources.index :資源索引表文件,構建應用軟體時生成。
    • app.json5module.json5JSON文件,包含構建工具、作業系統和應用市場的配置信息。[12]
  • pack.info :描述App Pack屬性的文件。

擴展閱讀

參考文獻

  1. ^ HarmonyOS(鸿蒙)——应用程序包结构-云社区-华为云. bbs.huaweicloud.com. [2023-09-26]. (原始內容存檔於2023-09-26). 
  2. ^ 2.0 2.1 柳偉衛. 鸿蒙HarmonyOS手机应用开发实战. 清華大學出版社. 2022. ISBN 9787302596424. 
  3. ^ HarmonyOS工程介绍. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  4. ^ 4.0 4.1 应用基础知识. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2020-12-21). 
  5. ^ 什么是元服务. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  6. ^ HAP File - What is a .hap file and how do I open it?. fileinfo.com. [2023-08-20]. (原始內容存檔於2023-10-02). 
  7. ^ 7.0 7.1 7.2 Stage模型应用程序包结构. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  8. ^ Stage模型应用程序包结构. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  9. ^ HUAWEI DevEco Studio和SDK下载和升级 | HarmonyOS开发者. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  10. ^ 编译构建概述. developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  11. ^ AppGallery Connect概述. developer.huawei.com. [2023-08-26]. (原始內容存檔於2023-08-26). 
  12. ^ 应用配置文件概述(Stage模型). developer.harmonyos.com. [2023-08-26]. (原始內容存檔於2023-08-26).