diff --git a/zh-cn/application-dev/tools/Readme-CN.md b/zh-cn/application-dev/tools/Readme-CN.md new file mode 100644 index 0000000000000000000000000000000000000000..d65d64cc4d77bab16ea70e0f932d4f75e2c52fe3 --- /dev/null +++ b/zh-cn/application-dev/tools/Readme-CN.md @@ -0,0 +1,9 @@ +# 工具 + +- [aa工具](aa-tool.md) +- [bm工具](bm-tool.md) +- 打包拆包工具 + - [打包工具](packing-tool.md) + - [拆包工具](unpacking-tool.md) +- [cem工具](cem-tool.md) +- [anm工具](anm-tool.md) diff --git a/zh-cn/application-dev/tools/aa-tool.md b/zh-cn/application-dev/tools/aa-tool.md new file mode 100644 index 0000000000000000000000000000000000000000..2d4a1ff605c5abad446e83fea96d71a380ec1096 --- /dev/null +++ b/zh-cn/application-dev/tools/aa-tool.md @@ -0,0 +1,113 @@ +# aa工具 + + +Ability assistant(Ability助手,简称为aa),是实现应用及测试用例启动功能的工具,为开发者提供基本的应用调试和测试的能力。通过该工具,开发者可以在hdc shell中,发送命令以执行各种系统操作,例如启动应用组件、强制停止进程、打印应用组件相关信息等。 + + +- help + 用于显示aa相关的帮助信息。 + + 返回值: + + 返回对应的帮助信息。 + + 使用方法: + + + ```bash + aa help + ``` + + +- start + 用于启动一个应用组件,目标组件可以是FA模型的PageAbility和ServiceAbility组件,也可以是Stage模型的UIAbility和ServiceExtensionAbility组件,且目标组件相应配置文件中的visible标签不能配置为false。 + + | 参数 | 参数说明 | + | -------- | -------- | + | -h/--help | 帮助信息。 | + | -d | 可选参数,deviceId。 | + | -a | 必选参数,abilityName。 | + | -b | 必选参数,bundleName。 | + | -D | 可选参数,调试模式。 | + + 返回值: + + 当启动成功时,返回"start ability successfully.";当启动失败时,返回"error: failed to start ability.",同时会包含相应的失败信息。 + + 使用方法: + + + ```bash + aa start [-d ] -a -b [-D] + ``` + +- stop-service + 用于停止ServiceAbility。 + + | 参数 | 参数说明 | + | -------- | -------- | + | -h/--help | 帮助信息。 | + | -d | 可选参数,deviceId。 | + | -a | 必选参数,abilityName。 | + | -b | 必选参数,bundleName。 | + + 返回值: + + 当成功停止ServiceAbility时,返回"stop service ability successfully.";当停止失败时,返回"error: failed to stop service ability."。 + + 使用方法: + + + ```bash + aa stop-service [-d ] -a -b + ``` + +- dump + 用于打印应用组件的相关信息。 + | 参数 | 二级参数 | 参数说明 | + | -------- | -------- | -------- | + | -h/--help | - | 帮助信息。 | + | -a/--all | - | 打印所有mission内的应用组件信息。 | + | -l/--mission-list | type(缺省打印全部) | 打印任务栈信息。
可取值:
- NORMAL
- DEFAULT_STANDARD
- DEFAULT_SINGLE
- LAUNCHER | + | -e/--extension | elementName | 打印扩展组件信息。 | + | -u/--userId | UserId | 打印指定UserId的栈信息,需要和其他参数组合使用,例如aa dump -a -u 100、aa dump -d -u 100。 | + | -d/--data | - | 打印DataAbility相关信息。 | + | -i/--ability | AbilityRecord ID | 打印指定应用组件详细信息。 | + | -c/--client | - | 打印应用组件详细信息,需要和其他参数组合使用,例如aa dump -a -c、aa dump -i 21 -c。 | + + 使用方法: + + + ```bash + aa dump -a + ``` + + ![aa-dump-a](figures/aa-dump-a.png) + + + ```bash + aa dump -l + ``` + + ![aa-dump-l](figures/aa-dump-l.png) + + + ```bash + aa dump -i 12 + ``` + + ![aa-dump-i](figures/aa-dump-i.png) + +- force-stop + 通过bundleName强制停止一个进程。 + + 返回值: + + 当成功强制停止该进程时,返回"force stop process successfully.";当强制停止失败时,返回"error: failed to force stop process."。 + + 使用方法: + + + ```bash + aa force-stop + ``` diff --git a/zh-cn/application-dev/tools/anm-tool.md b/zh-cn/application-dev/tools/anm-tool.md new file mode 100644 index 0000000000000000000000000000000000000000..2c0967f35320132133217e9fb18c6632b1d9458b --- /dev/null +++ b/zh-cn/application-dev/tools/anm-tool.md @@ -0,0 +1,77 @@ +# anm工具 + +Advanced Notification Manager(通知管理工具,简称anm)是实现通知打印、设置通知参数等功能的工具,为开发者提供基本的通知调试和测试能力。通过该工具,开发者可以在hdc shell中,发送命令以执行各种系统操作,例如打印已发布通知详细信息、设置通知缓存个数、使能通知等。 + +### help + +* 介绍 + + 打印帮助信息。 + +* 用法 + + ``` + anm help + ``` + +### dump + +* 介绍 + + 打印通知相关信息。 + +* 用法 + + ``` + anm dump [] + ``` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ---------------- | -------------------------------- | + | -A/--active | 打印所有活跃的通知信息 | + | -R/--recent | 打印最近的通知信息 | + | -D/--distributed | 打印来自其他设备的分布式通知信息 | + | -b/--bundle | 可选参数,设置指定的包名打印 | + | -u/--user-id | 可选参数,设置指定的用户ID打印 | + | -h/--help | 帮助信息 | + +* 示例 + + ``` +anm dump -A + ``` + + 打印活跃的通知信息。 + + ![anm-dump-A](figures/anm-dump-A.png) + + +### Setting + +* 介绍 + + 设置通知参数。 + +* 用法 + + ``` + anm setting [] + ``` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ------------------------ | ------------------------------------ | + | -c/--recent-count | 设置保存在内存中的最近通知的最大个数 | + | -e/--enable-notification | 设置通知使能开关 | + | -h/--help | 帮助信息 | + +* 示例 + + ``` + anm setting -c 100 + ``` + + 设置保存在内存中的最近通知的最大数为100个。 \ No newline at end of file diff --git a/zh-cn/application-dev/tools/bm-tool.md b/zh-cn/application-dev/tools/bm-tool.md new file mode 100644 index 0000000000000000000000000000000000000000..6b7fade3819c991b669bb5b3d183f208cdbee0c0 --- /dev/null +++ b/zh-cn/application-dev/tools/bm-tool.md @@ -0,0 +1,284 @@ +# bm工具 + + +Bundle Manager(包管理工具,简称bm)是实现应用安装、卸载、更新、查询等功能的工具,bm为开发者提供基本的应用安装包的调试能力,开发者可以在hdc shell中,执行bm命令以触发各种系统操作,例如:安装应用,卸载应用,查询安装包信息等。 + + + **表1** bm工具命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| help | 帮助命令,显示bm支持的命令信息 | +| install | 安装命令,用来安装应用 | +| uninstall | 卸载命令,用来卸载应用 | +| dump | 查询命令,用来查询应用的相关信息 | +| clean | 清理命令,用来清理应用的缓存和数据 | +| enable | 使能命令,用来使能应用,使能后应用可以继续使用 | +| disable | 禁用命令,用来禁用应用,禁用后应用无法使用 | +| get | 获取udid命令,用来获取设备的udid | +| quickfix | 快速修复相关命令,用来执行补丁相关操作,如补丁安装、补丁查询 | + + +## 帮助命令 + + **表2** help命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| bm help | 显示bm工具的能够支持的命令信息 | + +示例: + + +```bash +# 显示帮助信息 +bm help +``` + + +## 安装命令 + +```bash +bm install [-h] [-p path] [-u userId] [-r] [-w waitting-time] +``` + + + **表3** 安装命令列表 + +| 命令 | 是否必选 | 描述 | +| -------- | -------- | -------- | +| -h | 否,默认输出帮助信息 | 显示install支持的命令信息 | +| -p | 是 | 安装HAP包路径,支持指定路径和多个HAP同时安装 | +| -u | 否,默认安装到当前所有用户上 | 给指定用户安装一个HAP包 | +| -r | 否,默认值为覆盖安装 | 覆盖安装一个HAP包 | +| -w | 否,默认等待5s | 安装HAP包时指定bm工具等待时间,最小的等待时长为5s,最大的等待时长为600s, 默认缺省为5s | + + +示例: + +```bash +bm install -p /data/app/ohosapp.hap -u 100 -w 5s -r +// 执行结果 +install bundle successfully. +``` + + +## 卸载命令 + +```bash +bm uninstall [-h help] [-n bundleName] [-m moduleName] [-u userId] [-k] +``` + + + **表4** 卸载命令列表 + +| 命令 | 是否必选 | 描述 | +| -------- | -------- | -------- | +| -h | 否,默认输出帮助信息 | 显示uninstall支持的命令信息 | +| -n | 是 | 指定包名卸载应用 | +| -m | 否,默认卸载所有模块 | 指定卸载应用的一个模块 | +| -u | 否,默认卸载当前所有用户下该应用 | 指定用户卸载应用 | +| -k | 否,默认卸载应用时不保存应用数据 | 卸载应用时保存应用数据 | + + +示例: + +```bash +bm uninstall -n com.ohos.app -m com.ohos.app.MainAbility -u 100 -k +// 执行结果 +uninstall bundle successfully. +``` + + +## 查询命令 + +```bash +bm dump [-h help] [-a] [-n bundleName] [-s shortcutInfo] [-u userId] [-d deviceId] +``` + + +注:-u未指定情况下,默认为所有用户。 + + + **表5** 查询命令列表 + +| 命令 | 是否必选 | 描述 | +| -------- | -------- | -------- | +| -h | 否,默认输出帮助信息 | 显示dump支持的命令信息 | +| -a | 是 | 查询系统已经安装的所有应用 | +| -n | 是 | 查询指定包名的详细信息 | +| -s | 是 | 查询指定包名下的快捷方式信息 | +| -d | 否,默认查询当前设备 | 查询指定设备中的包信息 | +| -u | 否,默认查询当前设备上的所有用户 | 查询指定用户下指定包名的详细信息 | + + +示例: + +```bash +# 显示所有已安装的包名 +bm dump -a +# 查询该应用的详细信息 +bm dump -n com.ohos.app -u 100 +# 查询该应用的快捷方式信息 +bm dump -s com.ohos.app -u 100 +# 查询跨设备应用信息 +bm dump -n com.ohos.app -d xxxxx +``` + + +## 清理命令 + +```bash +bm clean [-h] [-c] [-n bundleName] [-d] [-u userId] +``` + + +注:-u未指定情况下,默认为当前活跃用户。 + + + **表6** 清理命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| -h | 显示clean支持的命令信息 | +| -c -n | 清除指定包名的缓存数据 | +| -d -n | 清除指定包名的数据目录 | +| -u | 清除指定用户下包名的缓存数据 | + + +示例: + +```bash +# 清理该应用下的缓存数据 +bm clean -c -n com.ohos.app -u 100 +// 执行结果 +clean bundle cache files successfully. +# 清理该应用下的用户数据 +bm clean -d -n com.ohos.app -u 100 +// 执行结果 +clean bundle data files successfully. +``` + + +## 使能命令 + +```bash +bm enable [-h] [-n bundleName] [-a abilityName] [-u userId] +``` + + +注:-u未指定情况下,默认为当前活跃用户。 + + + **表7** 使能命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| -h | 显示enable支持的命令信息 | +| -n | 使能指定包名的应用 | +| -a | 使能指定包名下的元能力模块 | +| -u | 使能指定用户和包名的应用 | + + +示例: + +```bash +# 使能该应用 +bm enable -n com.ohos.app -a com.ohos.app.MainAbility -u 100 +// 执行结果 +enable bundle successfully. +``` + + +## 禁用命令 + +```bash +bm disable [-h] [-n bundleName] [-a abilityName] [-u userId] +``` + + +注:-u未指定情况下,默认为当前活跃用户。 + + + **表8** 禁用命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| -h | 显示disable支持的命令信息 | +| -n | 禁用指定包名的应用 | +| -a | 禁用指定包名下的元能力模块 | +| -u | 禁用指定用户和包名下的应用 | + +示例: + +```bash +# 禁用该应用 +bm disable -n com.ohos.app -a com.ohos.app.MainAbility -u 100 +// 执行结果 +disable bundle successfully. +``` + + +## 获取udid + +```bash +bm get [-h] [-u] +``` + + + **表9** 获取udid命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| -h | 显示get支持的命令信息 | +| -u | 获取设备的udid | + + +示例: + +```bash +# 获取设备的udid +bm get -u +// 执行结果 +udid of current device is : +23CADE0C +``` + + +## 快速修复 + +```bash +bm quickfix [-h] [-a -f filePath] [-q -b bundleName] +``` + + + **表10** 快速修复命令列表 + +| 命令 | 描述 | +| -------- | -------- | +| -h | 显示quickfix支持的命令信息 | +| -a -f | 执行快速修复补丁安装命令,file-path对应hqf文件,支持传递1个或多个hqf文件,或传递hqf文件所在的目录。 | +| -q -b | 根据包名查询补丁信息,bundle-name对应包名。 | + + +示例: + +```bash +# 根据包名查询补丁包信息 +bm quickfix -q -b com.ohos.app +// 执行结果 +// Information as follows: +// ApplicationQuickFixInfo: +// bundle name: com.ohos.app +// bundle version code: xxx +// bundle version name: xxx +// patch version code: x +// patch version name: +// cpu abi: +// native library path: +// type: +# 快速修复补丁安装 +bm quickfix -a -f /data/app/ +//执行结果 +apply quickfix succeed. +``` diff --git a/zh-cn/application-dev/tools/cem-tool.md b/zh-cn/application-dev/tools/cem-tool.md new file mode 100644 index 0000000000000000000000000000000000000000..f0edf2e558af52e6f57d87199f8ed8ec940e7412 --- /dev/null +++ b/zh-cn/application-dev/tools/cem-tool.md @@ -0,0 +1,90 @@ +# cem工具 + +Common Event Manager(公共事件管理工具, 简称cem)是实现公共事件信息打印、发布公共事件等功能的工具,为开发者提供基本的公共事件调试和测试能力。通过该工具,开发者可以在hdc shell中,发送命令执行各种系统操作,例如打印所有公共事件订阅者、已发送公共事件和接受者、模拟发布公共事件等。 + +## cem调试助手 + +### help + +* 介绍 + + 打印帮助信息。 + +* 用法 + + ``` + cem help + ``` + +### publish + +* 介绍 + + 发布公共事件。 + +* 用法 + + ``` + cem publish [] + ``` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ------------ | ------------------------------------------ | + | -e/--event | 必选参数,发布事件名称 | + | -s/--sticky | 可选参数,发布粘性事件,默认发布非粘性事件 | + | -o/--ordered | 可选参数,发布有序事件,默认发布无序事件 | + | -c/--code | 可选参数,公共事件结果码 | + | -d/--data | 可选参数,公共事件携带数据 | + | -h/--help | 帮助信息 | + +* 示例 + + ``` +cem publish --event "testevent" + ``` + + 发布名称为testevent的公共事件 + + ![cem-publish-event](figures/cem-publish-event.png) + + ``` +cem publish -e "testevent" -s -o -c 100 -d "this is data" + ``` + + 发布名称为testevent的粘性有序公共事件,该事件的结果码为100,携带数据内容为“this is data” + + ![cem-publish-all](figures/cem-publish-all.png) + +### dump + +* 介绍 + + 打印公共事件相关信息。 + +* 用法 + + ``` + cem dump [] + ``` + + 参数如下表所示 + + | 参数 | 参数说明 | + | ---------- | -------------------------------------------- | + | -a/--all | 打印开机以来所有已发送的公共事件及其具体信息 | + | -e/--event | 查询特定名称事件的具体信息 | + | -h/--help | 帮助信息 | + +* 示例 + + ``` + cem dump -e "testevent" + ``` + +​ 打印公共事件名称为testevent的具体信息。 + +​ ![cem-dump-e](figures/cem-dump-e.png) + + diff --git a/zh-cn/application-dev/tools/figures/anm-dump-A.png b/zh-cn/application-dev/tools/figures/anm-dump-A.png new file mode 100644 index 0000000000000000000000000000000000000000..368e6f2d810976486e786a4c8f0603a87ad48540 Binary files /dev/null and b/zh-cn/application-dev/tools/figures/anm-dump-A.png differ diff --git a/zh-cn/application-dev/tools/figures/cem-dump-e.png b/zh-cn/application-dev/tools/figures/cem-dump-e.png new file mode 100644 index 0000000000000000000000000000000000000000..c2422ba0e51011174c333985ad7647f170e0f126 Binary files /dev/null and b/zh-cn/application-dev/tools/figures/cem-dump-e.png differ diff --git a/zh-cn/application-dev/tools/figures/cem-publish-all.png b/zh-cn/application-dev/tools/figures/cem-publish-all.png new file mode 100644 index 0000000000000000000000000000000000000000..99526e1f7245d101914354e2a89d5e97d710c27f Binary files /dev/null and b/zh-cn/application-dev/tools/figures/cem-publish-all.png differ diff --git a/zh-cn/application-dev/tools/figures/cem-publish-event.png b/zh-cn/application-dev/tools/figures/cem-publish-event.png new file mode 100644 index 0000000000000000000000000000000000000000..f0ca7e73093f1be72c743bd7c08467f11e2a0e05 Binary files /dev/null and b/zh-cn/application-dev/tools/figures/cem-publish-event.png differ diff --git a/zh-cn/application-dev/tools/packing-tool.md b/zh-cn/application-dev/tools/packing-tool.md new file mode 100644 index 0000000000000000000000000000000000000000..bffff10fe6e0221ce1a2ae79c4af01b92ca63d80 --- /dev/null +++ b/zh-cn/application-dev/tools/packing-tool.md @@ -0,0 +1,87 @@ +# 打包工具 + + +打包工具是OpenHarmony提供的一种调测工具,支持通过命令行的方式生成HAP、将多个HAP打包为App Pack(Application Package),或将多个HAP和App Pack打包为App Pack。App Pack为应用市场上架时所需的包格式。 + + +打包所用的app_packing_tool.jar,可以在本地下载的OpenHarmony的SDK库中找到。 + + +- 打包为HAP + Stage模型打包命令如下: + + + ```bash + java -jar app_packing_tool.jar --mode