App 包结构
鸿蒙的APP包结构整体上分为2大部分,分别是Hap和pack.info,其中HAP的数量是最少为1,pack.info数量为1。整体架构如下:
其中:
Hap:鸿蒙应用安装和运行的基本单元,由源码、资源文件、三方库和配置文件等组成,分为:
(1)Entry:是应用的入口
(2)feature:动态模块,应用的功能拓展
(3)pack.info:是在打包的时候,由IDE生成的。用于描述APP的信息,包含版本、公司、module等信息。
下图我们可以看到一个app包中包含的内容:
工程目录结构
AppScope:App全局配置,App名字、ICon等
Module:模块。可以包含多个模块,一定会有一个入口模块Entry。
ets:源码
entryability:应用入口;
pages:应用包含的页面;
resources:资源文件。图片、字符串、国际化相关资源。其中element用于存放字符串、颜色、央视等资源。media存放图片、视频、音频等多媒体文件;rawfile存放任意格式的资源文件。
module.json5:模块的配置文件。包含模块的名字、类型、描述、入口Ability的名字、支持的设备、需要的权限等信息;
build-profile.json5:当前模块的模块信息、编译信息配置项,buildOption、targets等;
hvigorfile.ts:模块级别编译构建的脚本;
oh-package.json5(模块内部):描述三方包名、版本、入口文件和依赖项;