• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Multi-HAP Development, Debugging, Release, and Deployment Process
2
3Below is the process of developing, debugging, releasing, and deploying multiple HAP files.
4
5**Figure 1** Process of developing, debugging, releasing, and deploying multiple HAP files
6![hap-release](figures/hap-release.png)
7
8## Development
9You can use [DevEco Studio](https://developer.harmonyos.com/en/develop/deveco-studio) to create multiple modules as needed and develop services in respective modules.
10
11## Debugging
12After building code into one or more HAP files and installing or updating these HAP files, you can debug them. You can leverage a single set of code and files to build multiple target editions for different audiences, deployment environments, operating environments, and more. For details, see [Customizing Multi-Target and Multi-Product Builds](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/customized-multi-targets-and-products-0000001430013853-V3?catalogVersion=V3).
13
14You can debug HAP files using the methods:
15* Using DevEco Studio for debugging
16
17   Follow the instructions in [Debugging Configuration](https://developer.harmonyos.com/en/docs/documentation/doc-guides/ohos-debugging-and-running-0000001263040487#section10491183521520).
18
19* Using [hdc](../../device-dev/subsystems/subsys-toolchain-hdc-guide.md) (which can be obtained in the **toolchains** directory of the OpenHarmony SDK) for debugging
20
21   Before debugging HAP files, install or update them using either of the methods:
22
23 1. Use hdc to install and update the HAP files.
24
25    When specifying the HAP files, use the paths of the files on the operating system, for example, Windows.
26
27    ```
28    // Installation and update: Multiple file paths can be specified.
29    hdc install C:\entry.hap C:\feature.hap
30    // The execution result is as follows:
31    install bundle successfully.
32    // Uninstall
33    hdc uninstall com.example.myapplication
34    // The execution result is as follows:
35    uninstall bundle successfully.
36    ```
37
38 2. Run the hdc shell command, and then use the Bundle Manager (bm) tool to install and update the HAP files.
39
40    When specifying the HAP files, use the paths of the files on the real device. The sample code is as follows:
41
42    ```
43    // Run the hdc shell command before using the bm tool.
44    hdc shell
45    // Installation and update: Multiple file paths can be specified.
46    bm install -p /data/app/entry.hap /data/app/feature.hap
47    // The execution result is as follows:
48    install bundle successfully.
49    // Uninstall
50    bm uninstall -n com.example.myapplication
51    // The execution result is as follows:
52    uninstall bundle successfully.
53    ```
54    After the HAP files are installed or updated, you can debug them by following the instructions in [Ability Assistant](../tools/aa-tool.md).
55
56## Release
57When your application package meets the release requirements, you can package and build it into an App Pack and release it to the application market on the cloud. The application market verifies the signature of the App Pack. If the signature verification is successful, the application market obtains the HAP files from the App Pack, signs them, and distributes the signed HAP files.
58
59## Deployment
60The application market on the cloud distributes the applications to application market clients. These applications can contain one or more HAP files. After the user selects an application to download, the application market downloads all the HAP files contained in this application.
61
62## Installation on a Device
63After the download is complete, the application market client calls the installation API of the bundle manager service in the system to install the downloaded HAP files. The bundle manager service deploys HAP files by application in the specified directory to complete the application installation.
64