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 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