App (文件格式)

维基百科,自由的百科全书
APP
扩展名
.app,.hap
开发者华为
格式类型软件包管理归档文件
作为容器
扩展自JAR

鸿蒙应用软件包,简称App文件或App Pack(英語:Application Package),是一种文件格式,用于鸿蒙操作系统中的应用软件。这些文件使用“.app”作为文件扩展名来标识[1]

App文件作为鸿蒙操作系统的原生英语Native (computing)应用程序,可通过华为应用市场发布和安装[2],或者通过华为快服务平台(Huawei Ability Gallery)分发“免安装”应用程序。[3][4]

每个鸿蒙应用软件包都包含一个或多个鸿蒙能力包(HarmonyOS Ability Package, 简称HAP,其文件扩展名为“.hap”)[5], 以及pack.info文件用以描述App文件属性。[6][7]

大多数鸿蒙应用程序至少包含一个“Entry”类型的HAP文件作为应用程序的主要模块,以及附加的“Feature”类型的HAP文件用于实现应用程序的功能。[6]

概述[编辑]

鸿蒙应用程序以软件包文件的形式发布,后缀为.app,类似于Android操作系统中的apkMicrosoft Windows中的appx 、Debian操作系统中的Debian软件包等其他软件包。

制作鸿蒙应用程序需要使用DevEco Studio等软件开发工具来编码,并将HAP和相关文件打包成鸿蒙软件包。[8]

HAP文件包含资源、第三方配置文件。该文件可分为两类模块,即Entry模块和Feature模块。 HAP文件的Entry类型是主模块,必须包含在软件包中,而HAP文件的Feature类型则是用于展现应用程序功能的附加模块。

此外,针对各种不同设备而构建的软件包可以包含多个Entry类型的HAP文件。[3]

在打包成软件包之前,HAP文件可以直接在真机或模拟器上运行,提供给开发者在开发阶段调试和验证应用软件。[9]

开发完成后,包含签名信息的软件包可以通过AppGallery Connect分发到不同的设备;AppGallery Connect是用于创建、开发、分发和维护应用软件的服务工具包。[10]

App文件结构[编辑]

以阶段模型为例,App文件的结构通常包含以下文件和文件夹。[6]

  • entry.hapfeature.hap :Entry类型和Feature类型的基本模块,包含以下文件夹和文件。
    • ets文件夹:存储代码构建后而生成的字节码文件。
    • libs文件夹 :存放主模块的依赖文件。
    • resources文件夹:包含图形、多媒体、字符串、布局等资源文件。
    • resources.index :资源索引表文件,构建应用软件时生成。
    • app.json5module.json5JSON文件,包含构建工具、操作系统和应用市场的配置信息。[11]
  • pack.info :描述App Pack属性的文件。

扩展阅读[编辑]

参考文献[编辑]

  1. ^ HarmonyOS(鸿蒙)——应用程序包结构-云社区-华为云. bbs.huaweicloud.com. [2023-09-26]. (原始内容存档于2023-09-26). 
  2. ^ HarmonyOS工程介绍. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  3. ^ 3.0 3.1 应用基础知识. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2020-12-21). 
  4. ^ 什么是元服务. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  5. ^ HAP File - What is a .hap file and how do I open it?. fileinfo.com. [2023-08-20]. (原始内容存档于2023-10-02). 
  6. ^ 6.0 6.1 6.2 Stage模型应用程序包结构. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  7. ^ Stage模型应用程序包结构. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  8. ^ HUAWEI DevEco Studio和SDK下载和升级 | HarmonyOS开发者. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  9. ^ 编译构建概述. developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  10. ^ AppGallery Connect概述. developer.huawei.com. [2023-08-26]. (原始内容存档于2023-08-26). 
  11. ^ 应用配置文件概述(Stage模型). developer.harmonyos.com. [2023-08-26]. (原始内容存档于2023-08-26).