• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Application Package Structure in FA Model
2<!--Kit: Ability Kit-->
3<!--Subsystem: BundleManager-->
4<!--Owner: @wanghang904-->
5<!--Designer: @hanfeng6-->
6<!--Tester: @kongjing2-->
7<!--Adviser: @Brilliantry_Rui-->
8
9
10The following figure shows the package structure of an application developed based on the [FA Model](application-configuration-file-overview-fa.md). You should have a basic understanding of the related concepts.
11
12>
13> **NOTE**
14> It is the only application development model supported by API version 8 and earlier. Now, the stage model is recommended for application development.
15>
16
17
18The difference between the application package structures in the FA model and stage model lies in the location where the internal files of a HAP file are stored. In the FA model, all the resource files, library files, and code files are stored in the **assets** folder, where the files are further organized.
19
20
21- **config.json** is an application configuration file, where the template code is automatically created by DevEco Studio. You can modify the configuration as required. For details about the fields, see [Overview of Application Configuration Files in FA Model](application-configuration-file-overview-fa.md#configuration-file-internal-structure).
22
23- The **assets** folder is a collection of all the resource files, library files, and code files in a HAP file. It can be further organized into the **entry** folder and the **js** folder. The **entry** folder stores the **resources** folder and the **resources.index** file.
24
25- The **resources** folder stores resource files (such as strings and images) of the application. For details, see [Resource Categories and Access](resource-categories-and-access.md).
26
27- The **resources.index** file provides a resource index table, which is generated by DevEco Studio using the specific SDK tool.
28
29- The **js** folder stores code files created after compilation.
30
31- The **pack.info** file describes the HAP attributes in the bundle, for example, **bundleName** and **versionCode** of an application and **name**, **type**, and **abilities** of a module. The file is automatically generated when DevEco Studio builds the bundle.
32
33**Figure 1** Application package structure in FA model
34![app-pack-fa](figures/app-pack-fa.png)
35