1e41f4b71Sopenharmony_ci# Ability Assistant
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ciAbility Assistant (AA) is a tool used to start applications and test cases. It provides basic application debugging and testing capabilities, for example, starting application components, forcibly stopping processes, and printing application component information.
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci> **NOTE**
7e41f4b71Sopenharmony_ci>
8e41f4b71Sopenharmony_ci> Before using this tool, you must obtain the <!--Del-->[<!--DelEnd-->hdc tool<!--Del-->](../../device-dev/subsystems/subsys-toolchain-hdc-guide.md)<!--DelEnd--> and run the hdc shell command.
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci## help
12e41f4b71Sopenharmony_ci  Displays help information for the Ability Assistant.
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci  **Return value**
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci  Returns the help information.
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci  **Method**
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ci  
21e41f4b71Sopenharmony_ci  ```bash
22e41f4b71Sopenharmony_ci  aa help
23e41f4b71Sopenharmony_ci  ```
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci## start
27e41f4b71Sopenharmony_ci  Starts an application component. The target component can be the PageAbility and ServiceAbility components of the FA model or the UIAbility and ServiceExtensionAbility components of the Stage model. The **exported** tag in the configuration file of the target component cannot be set to **false**.
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci  | Name| Description             |
30e41f4b71Sopenharmony_ci  | -------- |-------------------|
31e41f4b71Sopenharmony_ci  | -h/--help | Help information.            |
32e41f4b71Sopenharmony_ci  | -d | Device ID. This parameter is optional.   |
33e41f4b71Sopenharmony_ci  | -a | Ability name. This parameter is optional.|
34e41f4b71Sopenharmony_ci  | -b | Bundle name. This parameter is optional. |
35e41f4b71Sopenharmony_ci  | -m | Module name. This parameter is optional. |
36e41f4b71Sopenharmony_ci  | -U | URI. This parameter is optional.        |
37e41f4b71Sopenharmony_ci  | -A | Action. This parameter is optional.     |
38e41f4b71Sopenharmony_ci  | -e | Entity. This parameter is optional.     |
39e41f4b71Sopenharmony_ci  | -t | Type. This parameter is optional.       |
40e41f4b71Sopenharmony_ci  | -S | Whether to enter the application sandbox during debugging. This parameter is optional. If this parameter is carried, the application sandbox is entered. Otherwise, the application sandbox is not entered.|
41e41f4b71Sopenharmony_ci  | --pi  | Key-value pair of the integer type. This parameter is optional.    |
42e41f4b71Sopenharmony_ci  | --pb  | Key-value pair of the Boolean type. This parameter is optional.    |
43e41f4b71Sopenharmony_ci  | --ps  | Key-value pair of the string type. This parameter is optional.   |
44e41f4b71Sopenharmony_ci  | --psn | Keyword of an empty string. This parameter is optional.    |
45e41f4b71Sopenharmony_ci  | --wl | Left margin of the window, in px. This parameter is optional.<br>**Constraints**:<br>This field is valid only when the 2-in-1 device is in developer mode and the application to start uses a debug signature.|
46e41f4b71Sopenharmony_ci  | --wt | Top margin of the window, in px. This parameter is optional.<br>**Constraints**:<br>This field is valid only when the 2-in-1 device is in developer mode and the application to start uses a debug signature.|
47e41f4b71Sopenharmony_ci  | --wh | Window height, in px. This parameter is optional.<br>**Constraints**:<br>This field is valid only when the 2-in-1 device is in developer mode and the application to start uses a debug signature.|
48e41f4b71Sopenharmony_ci  | --ww | Window width, in px. This parameter is optional.<br>**Constraints**:<br>This field is valid only when the 2-in-1 device is in developer mode and the application to start uses a debug signature.|
49e41f4b71Sopenharmony_ci  | -D | Debugging mode. This parameter is optional.       |
50e41f4b71Sopenharmony_ci
51e41f4b71Sopenharmony_ci  **Return value**
52e41f4b71Sopenharmony_ci
53e41f4b71Sopenharmony_ci  Returns "start ability successfully." if the ability is started; returns "error: failed to start ability." and the corresponding error information otherwise.
54e41f4b71Sopenharmony_ci
55e41f4b71Sopenharmony_ci  **Method**
56e41f4b71Sopenharmony_ci
57e41f4b71Sopenharmony_ci  
58e41f4b71Sopenharmony_ci  ```bash
59e41f4b71Sopenharmony_ci  # Display the ability started.
60e41f4b71Sopenharmony_ci  aa start [-d <deviceId>] [-a <abilityName> -b <bundleName>] [-m <moduleName>] [-D] [-S] [--pi <key> <integer-value>] [--pb <key> <bool-value: true/false/t/f, case insensitive] [--ps <key> <value>] [--psn <key>] [--wl <windowLeft>] [--wt <windowTop>] [--wh <windowHeight>] [--ww <windowWidth>]
61e41f4b71Sopenharmony_ci  
62e41f4b71Sopenharmony_ci  # Implicitly start an ability. If none of the parameters in the command is set, the startup fails.
63e41f4b71Sopenharmony_ci  aa start [-d <deviceId>] [-U <URI>] [-t <type>] [-A <action>] [-e <entity>] [-D] [--pi <key> <integer-value>] [--pb <key> <bool-value: true/false/t/f, case insensitive] [--ps <key> <value>] [--psn <key>] [--wl <windowLeft>] [--wt <windowTop>] [--wh <windowHeight>] [--ww <windowWidth>]
64e41f4b71Sopenharmony_ci  ```
65e41f4b71Sopenharmony_ci
66e41f4b71Sopenharmony_ci  **Example**
67e41f4b71Sopenharmony_ci
68e41f4b71Sopenharmony_ciThe following uses the implicit startup of an ability as an example.
69e41f4b71Sopenharmony_ci  > **NOTE**
70e41f4b71Sopenharmony_ci  > 
71e41f4b71Sopenharmony_ci  > This example describes only the usage of some fields. For details about ability matching rules, see [Matching Rules of Explicit Want and Implicit Want](../application-models/explicit-implicit-want-mappings.md).
72e41f4b71Sopenharmony_ci
73e41f4b71Sopenharmony_ci
74e41f4b71Sopenharmony_ci1. Configure **uris** for the target ability in the **module.json5** file.
75e41f4b71Sopenharmony_ci
76e41f4b71Sopenharmony_ci      ```json
77e41f4b71Sopenharmony_ci      {
78e41f4b71Sopenharmony_ci        "name": "TargetAbility",
79e41f4b71Sopenharmony_ci        ......
80e41f4b71Sopenharmony_ci        "exported": true,
81e41f4b71Sopenharmony_ci        "skills": [
82e41f4b71Sopenharmony_ci          {
83e41f4b71Sopenharmony_ci            "actions":[
84e41f4b71Sopenharmony_ci              "ohos.want.action.viewData"
85e41f4b71Sopenharmony_ci            ],
86e41f4b71Sopenharmony_ci            "uris":[
87e41f4b71Sopenharmony_ci              {
88e41f4b71Sopenharmony_ci                "scheme": "myscheme",
89e41f4b71Sopenharmony_ci                "host": "www.test.com",
90e41f4b71Sopenharmony_ci                "port": "8080",
91e41f4b71Sopenharmony_ci                "path": "path",
92e41f4b71Sopenharmony_ci              }
93e41f4b71Sopenharmony_ci            ]
94e41f4b71Sopenharmony_ci          }
95e41f4b71Sopenharmony_ci        ]
96e41f4b71Sopenharmony_ci      }
97e41f4b71Sopenharmony_ci      ```
98e41f4b71Sopenharmony_ci
99e41f4b71Sopenharmony_ci
100e41f4b71Sopenharmony_ci2. Implicitly start the ability.
101e41f4b71Sopenharmony_ci
102e41f4b71Sopenharmony_ci    - Run the **-U** command to start an application page.
103e41f4b71Sopenharmony_ci
104e41f4b71Sopenharmony_ci        ```bash
105e41f4b71Sopenharmony_ci        aa start -U myscheme://www.test.com:8080/path
106e41f4b71Sopenharmony_ci        ```
107e41f4b71Sopenharmony_ci
108e41f4b71Sopenharmony_ci    - If parameters need to be carried, run the following command:
109e41f4b71Sopenharmony_ci
110e41f4b71Sopenharmony_ci        ```bash
111e41f4b71Sopenharmony_ci        aa start -U myscheme://www.test.com:8080/path --pi paramNumber 1 --pb paramBoolean true --ps paramString teststring  --psn paramNullString
112e41f4b71Sopenharmony_ci        ```
113e41f4b71Sopenharmony_ci
114e41f4b71Sopenharmony_ci      The following is an example for the UIAbility to obtain input parameters:
115e41f4b71Sopenharmony_ci  
116e41f4b71Sopenharmony_ci        ```ts
117e41f4b71Sopenharmony_ci        import UIAbility from '@ohos.app.ability.UIAbility';
118e41f4b71Sopenharmony_ci        import hilog from '@ohos.hilog';
119e41f4b71Sopenharmony_ci        import Want from '@ohos.app.ability.Want';
120e41f4b71Sopenharmony_ci
121e41f4b71Sopenharmony_ci        export default class TargetAbility extends UIAbility {
122e41f4b71Sopenharmony_ci          onCreate(want:Want, launchParam) {
123e41f4b71Sopenharmony_ci            hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
124e41f4b71Sopenharmony_ci            let paramNumber = want.parameters.paramNumber
125e41f4b71Sopenharmony_ci            let paramBoolean = want.parameters.paramBoolean
126e41f4b71Sopenharmony_ci            let paramString = want.parameters.paramString
127e41f4b71Sopenharmony_ci            let paramNullString = want.parameters.paramNullString
128e41f4b71Sopenharmony_ci          }
129e41f4b71Sopenharmony_ci        }
130e41f4b71Sopenharmony_ci        ```
131e41f4b71Sopenharmony_ci
132e41f4b71Sopenharmony_ci    - Run the **-A -U** command to start the browser and redirect to a specified page.
133e41f4b71Sopenharmony_ci
134e41f4b71Sopenharmony_ci      The following uses **https://www.example.com** as an example. Replace it with the actual URL.
135e41f4b71Sopenharmony_ci
136e41f4b71Sopenharmony_ci        ```bash
137e41f4b71Sopenharmony_ci        aa start -A ohos.want.action.viewData -U https://www.example.com
138e41f4b71Sopenharmony_ci        ```
139e41f4b71Sopenharmony_ci
140e41f4b71Sopenharmony_ci
141e41f4b71Sopenharmony_ci## stop-service
142e41f4b71Sopenharmony_ci  Stops a ServiceAbility.
143e41f4b71Sopenharmony_ci
144e41f4b71Sopenharmony_ci  | Name| Description|
145e41f4b71Sopenharmony_ci  | -------- | -------- |
146e41f4b71Sopenharmony_ci  | -h/--help | Help information.|
147e41f4b71Sopenharmony_ci  | -d | Device ID. This parameter is optional.|
148e41f4b71Sopenharmony_ci  | -a | Ability name. This parameter is mandatory.|
149e41f4b71Sopenharmony_ci  | -b | Bundle name. This parameter is mandatory.|
150e41f4b71Sopenharmony_ci  | -m | Module name. This parameter is optional.|
151e41f4b71Sopenharmony_ci
152e41f4b71Sopenharmony_ci  **Return value**
153e41f4b71Sopenharmony_ci
154e41f4b71Sopenharmony_ci  Returns "stop service ability successfully." if the ServiceAbility is stopped; returns "error: failed to stop service ability." otherwise.
155e41f4b71Sopenharmony_ci
156e41f4b71Sopenharmony_ci  **Method**
157e41f4b71Sopenharmony_ci
158e41f4b71Sopenharmony_ci  
159e41f4b71Sopenharmony_ci  ```bash
160e41f4b71Sopenharmony_ci  aa stop-service [-d <deviceId>] -a <abilityName> -b <bundleName> [-m <moduleName>]
161e41f4b71Sopenharmony_ci  ```
162e41f4b71Sopenharmony_ci
163e41f4b71Sopenharmony_ci## dump<sup>(deprecated)</sup>
164e41f4b71Sopenharmony_ci  > **NOTE**
165e41f4b71Sopenharmony_ci  >
166e41f4b71Sopenharmony_ci  > This command is supported since API version 7 and deprecated since API version 9. You are advised to use **[hidumper](../dfx/hidumper.md) -s AbilityManagerService** instead.
167e41f4b71Sopenharmony_ci
168e41f4b71Sopenharmony_ci  Prints information about an application component.
169e41f4b71Sopenharmony_ci  | Name| Level-2 Parameter| Description|
170e41f4b71Sopenharmony_ci  | -------- | -------- | -------- |
171e41f4b71Sopenharmony_ci  | -h/--help | - | Help information.|
172e41f4b71Sopenharmony_ci  | -a/--all | - | Application component information in all missions.|
173e41f4b71Sopenharmony_ci| -l/--mission-list | type (All logs are printed if this parameter is left unspecified.)| For better management, the service side maintains four types of MissionLists, as described below:<br>- **NORMAL**: MissionList that is started normally. For example, if A starts B and C, the corresponding MissionList is A->B->C.<br>- **DEFAULT_STANDARD**: If a MissionList is damaged, missions with the launch type set to **multiton** are removed to this MissionList. The Missions in it are not associated with each other.<br>- **DEFAULT_SINGLE**: If a MissionList is damaged, missions with the launch type set to **singleton** are removed to this MissionList. The Missions in it are not associated with each other.<br>- **LAUNCHER**: MissionList for launcher abilities.|
174e41f4b71Sopenharmony_ci  | -e/--extension | elementName | Extended component information.|
175e41f4b71Sopenharmony_ci  | -u/--userId | UserId | Mission stack information of a specified user ID. This parameter must be used together with other parameters. Example commands: **aa dump -a -u 100** and **aa dump -d -u 100**.|
176e41f4b71Sopenharmony_ci  | -d/--data | - | DataAbility information.|
177e41f4b71Sopenharmony_ci  | -i/--ability | AbilityRecord ID | Detailed information about an application component.|
178e41f4b71Sopenharmony_ci  | -c/--client | - | Detailed information about an application component. This parameter must be used together with other parameters. Example commands: **aa dump -a -c** and **aa dump -i 21 -c**.|
179e41f4b71Sopenharmony_ci  | -p/--pending | - | Pending Want information. This parameter must be used together with other parameters. Example command: **aa dump -a -p**.|
180e41f4b71Sopenharmony_ci  | -r/--process | - | Process information. This parameter must be used together with other parameters. Example command: **aa dump -a -r**.|
181e41f4b71Sopenharmony_ci
182e41f4b71Sopenharmony_ci  **Method**
183e41f4b71Sopenharmony_ci
184e41f4b71Sopenharmony_ci  
185e41f4b71Sopenharmony_ci  ```bash
186e41f4b71Sopenharmony_ci  aa dump -a
187e41f4b71Sopenharmony_ci  ```
188e41f4b71Sopenharmony_ci
189e41f4b71Sopenharmony_ci  ![aa-dump-a](figures/aa-dump-a.png)
190e41f4b71Sopenharmony_ci
191e41f4b71Sopenharmony_ci  
192e41f4b71Sopenharmony_ci  ```bash
193e41f4b71Sopenharmony_ci  aa dump -l
194e41f4b71Sopenharmony_ci  ```
195e41f4b71Sopenharmony_ci
196e41f4b71Sopenharmony_ci  ![aa-dump-l](figures/aa-dump-l.png)
197e41f4b71Sopenharmony_ci
198e41f4b71Sopenharmony_ci  
199e41f4b71Sopenharmony_ci  ```bash
200e41f4b71Sopenharmony_ci  aa dump -i 12
201e41f4b71Sopenharmony_ci  ```
202e41f4b71Sopenharmony_ci
203e41f4b71Sopenharmony_ci  ![aa-dump-i](figures/aa-dump-i.png)
204e41f4b71Sopenharmony_ci
205e41f4b71Sopenharmony_ci## force-stop
206e41f4b71Sopenharmony_ci  Forcibly stops a process based on the bundle name.
207e41f4b71Sopenharmony_ci
208e41f4b71Sopenharmony_ci  **Return value**
209e41f4b71Sopenharmony_ci
210e41f4b71Sopenharmony_ci  Returns "force stop process successfully." if the process is forcibly stopped; returns "error: failed to force stop process." otherwise.
211e41f4b71Sopenharmony_ci
212e41f4b71Sopenharmony_ci  **Method**
213e41f4b71Sopenharmony_ci
214e41f4b71Sopenharmony_ci  
215e41f4b71Sopenharmony_ci  ```bash
216e41f4b71Sopenharmony_ci  aa force-stop <bundleName>
217e41f4b71Sopenharmony_ci  ```
218e41f4b71Sopenharmony_ci
219e41f4b71Sopenharmony_ci## test
220e41f4b71Sopenharmony_ci
221e41f4b71Sopenharmony_ci  Starts the test framework based on the carried parameters.
222e41f4b71Sopenharmony_ci
223e41f4b71Sopenharmony_ci  > **NOTE**
224e41f4b71Sopenharmony_ci  > 
225e41f4b71Sopenharmony_ci  > For details about parameters such as **class**, **level**, **size**, and **testType**, see [Keywords in the aa test Commands](../application-test/arkxtest-guidelines.md#in-the-cli).
226e41f4b71Sopenharmony_ci
227e41f4b71Sopenharmony_ci  | Name| Description|
228e41f4b71Sopenharmony_ci  | -------- | -------- |
229e41f4b71Sopenharmony_ci  | -h/--help | Help information.|
230e41f4b71Sopenharmony_ci  | -b | Bundle name. This parameter is mandatory.|
231e41f4b71Sopenharmony_ci  | -s unittest | Test runner. This parameter is mandatory.|
232e41f4b71Sopenharmony_ci  | -p | Package name of the test runner. This parameter is optional.<br>**NOTE**: This parameter can be used only in the FA model.|
233e41f4b71Sopenharmony_ci  | -m | Module name of the test runner. This parameter is optional.<br>**NOTE**: This parameter can be used only in the stage model.|
234e41f4b71Sopenharmony_ci  | -s class | Test suite or test case to be executed. This parameter is optional.|
235e41f4b71Sopenharmony_ci  | -s level | Level of the test case to be executed. This parameter is optional.|
236e41f4b71Sopenharmony_ci  | -s size | Size of the test case to be executed. This parameter is optional.|
237e41f4b71Sopenharmony_ci  | -s testType | Type of the test case to be executed. This parameter is optional.|
238e41f4b71Sopenharmony_ci  | -s timeout | Timeout interval for executing the test case, in ms. The default value is 5000. This parameter is optional.|
239e41f4b71Sopenharmony_ci  | -s \<any-key> | Any key-value pair. This parameter is optional.|
240e41f4b71Sopenharmony_ci  | -w | Test running time, in ms. This parameter is optional.|
241e41f4b71Sopenharmony_ci  | -D | Debugging mode. This parameter is optional.|
242e41f4b71Sopenharmony_ci
243e41f4b71Sopenharmony_ci  **Return value**
244e41f4b71Sopenharmony_ci
245e41f4b71Sopenharmony_ci  Returns "user test started." if the test framework is started; returns "error: failed to start user test." and the corresponding error information otherwise.
246e41f4b71Sopenharmony_ci
247e41f4b71Sopenharmony_ci  **Method**
248e41f4b71Sopenharmony_ci
249e41f4b71Sopenharmony_ci  ```bash
250e41f4b71Sopenharmony_ci  aa test -b <bundleName> [-m <module-name>] [-p <package-name>] [-s class <test-class>] [-s level <test-level>] [-s size <test-size>] [-s testType <test-testType>] [-s timeout <test-timeout>] [-s <any-key> <any-value>] [-w <wait-time>] -s unittest <testRunner>
251e41f4b71Sopenharmony_ci  ```
252e41f4b71Sopenharmony_ci
253e41f4b71Sopenharmony_ci## attach
254e41f4b71Sopenharmony_ci  Attaches an application to enable it to enter the debugging mode.
255e41f4b71Sopenharmony_ci
256e41f4b71Sopenharmony_ci  | Name| Description             |
257e41f4b71Sopenharmony_ci  | -------- |-------------------|
258e41f4b71Sopenharmony_ci  | -h/--help | Help information.            |
259e41f4b71Sopenharmony_ci  | -b | Bundle name. This parameter is mandatory. |
260e41f4b71Sopenharmony_ci
261e41f4b71Sopenharmony_ci
262e41f4b71Sopenharmony_ci  **Return value**
263e41f4b71Sopenharmony_ci
264e41f4b71Sopenharmony_ci  Returns "attach app debug successfully." if the application enters the debugging mode; returns "fail: unknown option." and prints the help information if the specified parameter is invalid.
265e41f4b71Sopenharmony_ci
266e41f4b71Sopenharmony_ci  **Method**
267e41f4b71Sopenharmony_ci
268e41f4b71Sopenharmony_ci  
269e41f4b71Sopenharmony_ci  ```bash
270e41f4b71Sopenharmony_ci  aa attach -b <bundleName>
271e41f4b71Sopenharmony_ci  ```
272e41f4b71Sopenharmony_ci
273e41f4b71Sopenharmony_ci## detach
274e41f4b71Sopenharmony_ci  Detaches an application to enable it to exit the debugging mode.
275e41f4b71Sopenharmony_ci
276e41f4b71Sopenharmony_ci  | Name| Description             |
277e41f4b71Sopenharmony_ci  | -------- |-------------------|
278e41f4b71Sopenharmony_ci  | -h/--help | Help information.            |
279e41f4b71Sopenharmony_ci  | -b | Bundle name. This parameter is mandatory. |
280e41f4b71Sopenharmony_ci
281e41f4b71Sopenharmony_ci
282e41f4b71Sopenharmony_ci  **Return value**
283e41f4b71Sopenharmony_ci
284e41f4b71Sopenharmony_ci  Returns "attach app debug successfully." if the application exits the debugging mode; returns "fail: unknown option." and prints the help information if the specified parameter is invalid.
285e41f4b71Sopenharmony_ci
286e41f4b71Sopenharmony_ci  **Method**
287e41f4b71Sopenharmony_ci
288e41f4b71Sopenharmony_ci  
289e41f4b71Sopenharmony_ci  ```bash
290e41f4b71Sopenharmony_ci  aa detach -b <bundleName>
291e41f4b71Sopenharmony_ci  ```
292e41f4b71Sopenharmony_ci
293e41f4b71Sopenharmony_ci## appdebug
294e41f4b71Sopenharmony_ci  Sets or cancels the waiting-for-debugging state of an application, and obtains the bundle name and persistence flag of an application in the waiting-for-debugging state. The waiting-for-debugging state takes effect only for debugging applications. The setting command of **appdebug** takes effect only for a single application. Once the command is executed repeatedly, the bundle name and persistence flag are replaced with the latest settings.
295e41f4b71Sopenharmony_ci
296e41f4b71Sopenharmony_ci  | Name| Level-2 Parameter| Description|
297e41f4b71Sopenharmony_ci  | -------- | -------- | -------- |
298e41f4b71Sopenharmony_ci  | -h/--help | - | Help information.|
299e41f4b71Sopenharmony_ci  | -b/--bundlename | bundleName | Bundle name for which the waiting-for-debugging state is set. The system does not verify the validity of the bundle name.|
300e41f4b71Sopenharmony_ci  | -p/--persist | - | Persistence flag. This parameter is optional. If this parameter is carried, the application is set to the waiting-for-debugging state persistently. That is, the setting takes effect regardless of whether the device is restarted or the application is reinstalled. If this parameter is not carried, the state takes effect only before the device is restarted. This parameter must be used together with the **-b** parameter. Example command: **aa appdebug -b \<bundleName> -p**.|
301e41f4b71Sopenharmony_ci  | -c/--cancel | - | Used to cancel the waiting-for-debugging state.|
302e41f4b71Sopenharmony_ci  | -g/--get | - | Used to obtain the bundle name and persistence flag of an application in the waiting-for-debugging state.|
303e41f4b71Sopenharmony_ci
304e41f4b71Sopenharmony_ci  **Return value**
305e41f4b71Sopenharmony_ci
306e41f4b71Sopenharmony_ci  Returns "app debug successfully." if the operation is successful; returns "error: not developer mode." if the operation fails because the application is not in developer mode; returns "error: failed to app debug." if the operation fails due to other reasons.
307e41f4b71Sopenharmony_ci
308e41f4b71Sopenharmony_ci  **Method**
309e41f4b71Sopenharmony_ci
310e41f4b71Sopenharmony_ci  ```bash
311e41f4b71Sopenharmony_ci  # Display the help information.
312e41f4b71Sopenharmony_ci  aa appdebug -h
313e41f4b71Sopenharmony_ci
314e41f4b71Sopenharmony_ci  # Set the waiting-for-debugging state for an application.
315e41f4b71Sopenharmony_ci  aa appdebug -b <bundleName> [-p]
316e41f4b71Sopenharmony_ci
317e41f4b71Sopenharmony_ci  # Cancel the waiting-for-debugging state.
318e41f4b71Sopenharmony_ci  aa appdebug -c
319e41f4b71Sopenharmony_ci
320e41f4b71Sopenharmony_ci  # Obtain the bundle name and persistence flag of an application in the waiting-for-debugging state.
321e41f4b71Sopenharmony_ci  aa appdebug -g
322e41f4b71Sopenharmony_ci  # Example of the obtained information: bundle name: com.example.publishsystem, persist: false
323e41f4b71Sopenharmony_ci  ```
324