App (文件格式)

鸿蒙应用软件包，简称App文件或App Pack（），是一种文件格式，用于鸿蒙操作系统中的应用软件。这些文件使用“.app”作为文件扩展名来标识。

App文件作为鸿蒙操作系统的应用程序，可通过华为应用市场发布和安装，或者通过华为快服务平台（Huawei Ability Gallery）分发“免安装”应用程序。

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

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

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

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

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

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

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

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

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

 entry.hap和feature.hap ：Entry类型和Feature类型的基本模块，包含以下文件夹和文件。
 ets文件夹：存储代码构建后而生成的字节码文件。
 libs文件夹 ：存放主模块的依赖文件。
 resources文件夹：包含图形、多媒体、字符串、布局等资源文件。
 resources.index ：资源索引表文件，构建应用软件时生成。
 app.json5和module.json5 ：JSON文件，包含构建工具、操作系统和应用市场的配置信息。

 pack.info ：描述App Pack属性的文件。

扩展阅读 
 apk（文件格式）
 .ipa

参考文献 

归档格式
行動作業系統