1# aa工具 2 3 4Ability assistant(Ability助手,简称为aa),是实现应用及测试用例启动功能的工具,为开发者提供基本的应用调试和测试能力,例如启动应用组件、强制停止进程、打印应用组件相关信息等。 5 6> **说明:** 7> 8> 在使用本工具前,开发者需要先获取[hdc工具](../../device-dev/subsystems/subsys-toolchain-hdc-guide.md),执行hdc shell。 9 10 11- help 12 用于显示aa相关的帮助信息。 13 14 **返回值**: 15 16 返回对应的帮助信息。 17 18 **使用方法**: 19 20 21 ```bash 22 aa help 23 ``` 24 25 26- start 27 用于启动一个应用组件,目标组件可以是FA模型的PageAbility和ServiceAbility组件,也可以是Stage模型的UIAbility和ServiceExtensionAbility组件,且目标组件相应配置文件中的exported标签不能配置为false。 28 29 | 参数 | 参数说明 | 30 | -------- |-------------------| 31 | -h/--help | 帮助信息。 | 32 | -d | 可选参数,deviceId。 | 33 | -a | 可选参数,abilityName。 | 34 | -b | 可选参数,bundleName。 | 35 | -U | 可选参数,URI。 | 36 | -A | 可选参数,action。 | 37 | -e | 可选参数,entity。 | 38 | -t | 可选参数,type。 | 39 | --pi | 可选参数,整形类型键值对。 | 40 | --pb | 可选参数,布尔类型键值对。 | 41 | --ps | 可选参数,字符串类型键值对。 | 42 | --psn | 可选参数,空字符串关键字。 | 43 | -D | 可选参数,调试模式。 | 44 45 **返回值**: 46 47 当启动成功时,返回"start ability successfully.";当启动失败时,返回"error: failed to start ability.",同时会包含相应的失败信息。 48 49 **使用方法**: 50 51 52 ```bash 53 # 显示启动Ability 54 aa start [-d <deviceId>] -a <abilityName> -b <bundleName> [-D] [--pi <key> <integer-value>] [--pb <key> <bool-value: true/false/t/f大小写不敏感] [--ps <key> <value>] [--psn <key>] 55 56 # 隐式启动Ability。如果命令中的参数都不填,会导致启动失败。 57 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大小写不敏感] [--ps <key> <value>] [--psn <key>] 58 ``` 59 60- stop-service 61 用于停止ServiceAbility。 62 63 | 参数 | 参数说明 | 64 | -------- | -------- | 65 | -h/--help | 帮助信息。 | 66 | -d | 可选参数,deviceId。 | 67 | -a | 必选参数,abilityName。 | 68 | -b | 必选参数,bundleName。 | 69 70 **返回值**: 71 72 当成功停止ServiceAbility时,返回"stop service ability successfully.";当停止失败时,返回"error: failed to stop service ability."。 73 74 **使用方法**: 75 76 77 ```bash 78 aa stop-service [-d <deviceId>] -a <abilityName> -b <bundleName> 79 ``` 80 81- dump 82 用于打印应用组件的相关信息。 83 | 参数 | 二级参数 | 参数说明 | 84 | -------- | -------- | -------- | 85 | -h/--help | - | 帮助信息。 | 86 | -a/--all | - | 打印所有mission内的应用组件信息。 | 87 | -l/--mission-list | type(缺省打印全部) | 服务侧为了方便管理任务链,内部维护了4种类型的任务链。<br/>可取值:<br/>- NORMAL:正常启动的任务链(比如A拉起B拉起C, 则对应的任务链是A->B->C)<br/>- DEFAULT_STANDARD:已经被破坏的任务链中的任务, 启动模式为`multiton`的任务被放到该任务链中, 这里面的任务之间没有关联关系<br/>- DEFAULT_SINGLE:已经被破坏的任务链中的任务, 启动模式为`singleton`的任务被放到该任务链中, 这里面的任务之间没有关联关系<br/>- LAUNCHER:launcher的任务链 | 88 | -e/--extension | elementName | 打印扩展组件信息。 | 89 | -u/--userId | UserId | 打印指定UserId的栈信息,需要和其他参数组合使用,例如aa dump -a -u 100、aa dump -d -u 100。 | 90 | -d/--data | - | 打印DataAbility相关信息。 | 91 | -i/--ability | AbilityRecord ID | 打印指定应用组件详细信息。 | 92 | -c/--client | - | 打印应用组件详细信息,需要和其他参数组合使用,例如aa dump -a -c、aa dump -i 21 -c。 | 93 94 **使用方法**: 95 96 97 ```bash 98 aa dump -a 99 ``` 100 101  102 103 104 ```bash 105 aa dump -l 106 ``` 107 108  109 110 111 ```bash 112 aa dump -i 12 113 ``` 114 115  116 117- force-stop 118 通过bundleName强制停止一个进程。 119 120 **返回值**: 121 122 当成功强制停止该进程时,返回"force stop process successfully.";当强制停止失败时,返回"error: failed to force stop process."。 123 124 **使用方法**: 125 126 127 ```bash 128 aa force-stop <bundleName> 129 ``` 130