当前位置: 首页 > news >正文

移动端 App 测试入门(3)----ADB命令

上期我们讲了ADB的基本介绍和环境配置,这期我们来介绍ADB的一些常用命令:

1. 常规命令

1.1 install(安装应用)

install命令用来安装应用:

adb install XXX.apk

发现报错了,这是因为我们同时连接了多台设备adb不知道要操作哪个设备,这时候需要使用-s参数指定要操作的设备:

除了-s参数还可以使用 -r参数来覆盖安装

adb install -r XXX.apk

1.2 uninstall(卸载应用)

adb uninstall <App包名>

卸载应用时我们要知道卸载应用的包名:

#获取前台运行应用的包名,windows系统使用findstr, Mac/Linux系统使用grep过滤关键字 #Android v12 以上 adb shell dumpsys activity recents | findstr "topActivity" #Android v7.0 以上 adb shell dumpsys activity | findstr "mResucmedActivity" #Android v7.0 以下 adb shell dumpsys activity | findstr "mFocusedActivity"

tv.danmaku.bili 就是包名

1.3 传输文件

#从手机拉取信息放到本地电脑上 adb pull <手机文件所在路径> <本机存放路径> #从本地电脑推送信息到手机上 adb push <本机路径> <手机路径>

注意,这里的0对应的是sdcard

1.4 获取日志

adb logcat | findstr <关键词>

Ctrl + C可以退出

2. adb shell命令

adb命令是adb程序自带的一些参数完成不同的功能,adb shell是通过调用Android系统中的命令,这些命令存放于Android系统的/system/bin目录下。

#进入 adb shell adb shell #退出 adb shell exit

在shell模式下可以使用linux命令查看文件:

2.1 pm 命令

# 列出手机所有安装应用包名 pm list packages # 过滤指定App pm list packages | grep <关键字> # 列出系统级别应用 pm list packages -s #列出第三方应用 pm list packages -3 # 查看应用安装路径 pm path 包名 # 获取应用的详细信息 pm dump <包名> # 清除应用的数据 pm clear <包名>

注意:上面命令要在adb shell模式下使用,或者在命令前面加上adb shell

2.2 am 命令

#启动应用 am start -n <应用包名>/<应用启动入口> #重启目标应用 am start -s <应用包名>/<应用启动入口> #启动应用,并等待应用完成启动 am start -w <应用包名>/<应用启动入口> #强制停止应用 am force-stop <应用包名>

应用启动入口:可以理解为应用的启动程序

怎么找到启动入口:

1. 查看有关start的日志

adb logcat | findstr "start"

2. 手动点击启动应用

找到我们启动应用的日志,跟在包名后面的就是启动入口

使用命令启动:

2.3 input 命令

可以通过该命令向Android设备发送按键事件

#向输入框输入文本内容(不支持中文) adb shell input text <文本内容> #发送按键事件操作 adb shell input keyevent <按键事件> #发送触摸事件 adb shell input tap <x轴坐标> <y轴坐标> #发送滑动事件 adb shell input swipe <起始点x轴坐标> <起始点y轴坐标> <终点x轴坐标> <终点y轴坐标> [滑动总耗时ms]

获取坐标:

我们在开发者选项中打开指针位置选项:

当我们点击/滑动时就会显示我们点击的位置:

adb shell input keyevent <按键事件> 命令中,按键事件是一个整数是,使用时我们需要查对照表:

Key Code Number Key Name 说明
0 KEYCODE_UNKNOWN
1 KEYCODE_MENU 菜单键
2 KEYCODE_SOFT_RIGHT
3 KEYCODE_HOME HOME键(起始键)
4 KEYCODE_BACK 返回键
5 KEYCODE_CALL 打开拨号应用
6 KEYCODE_ENDCALL 挂断电话
7 KEYCODE_0 按键0
8 KEYCODE_1 按键1
......

2.4 dumpsys 命令

或许系统服务信息

#获取cpu信息 adb shell dumpsys cpuinfo #获取内存信息 adb shell dumpsys meminfo #获取activity信息 adb shell dumpsys activity #获取package信息 adb shell dumpsys package <包名> #获取wifi信息 adb shell dumpsys wifi

2.5 其它命令

#截屏 adb shell screencap -p /sdcard/xx.png #录制视频,Ctrl + c 结束录制 adb shell screenrecord /sdcard/xx./mp4 #列出所有输入法ID adb shell ime list -s #设置输入法 adb shell ime set <输入法ID>
http://www.jsqmd.com/news/1079578/

相关文章:

  • Loftware NiceLabel Designer Pro 产品介绍
  • 除醛喷剂除甲醛的效果、使用频率与用量全解析
  • Intel RealSense D435深度相机:从硬件原理到实战应用全解析
  • 混剪智能体有哪些工具或方案推荐?企业选型时关键看这三点
  • 计算机毕业设计之基于ssm的失物招领系统的设计与实现
  • PCIE909-基于XILINX VU9P的PCIE3.0高性能FMC+载板
  • PCF80空间单细胞蛋白组与空间转录组有什么区别?为什么蛋白层面验证很关键
  • 计算机毕业设计之jsp基于ssm的在线购物系统的设计与实现
  • STM32-S144-4种商品+4路步进电机出货+选货支付+库存+缺货提醒+找零+声光提醒+按键+TFT彩屏+(无线方式选择)-3(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底
  • 用Grok Task打造每日自动AI素材池
  • 2026年竹篱笆片供应商怎么选?这3点最关键
  • 2026申博机构深度测评:申博有术十九连冠卫冕,7家新晋机构实测横评
  • 第21篇 C语言内存函数
  • 2026年半导体指纹与光学指纹智能门锁实测对比:湿手、油污、假指模、老人浅纹场景数据报告
  • 混合与拉格朗日有限元耦合:精准求解应力集中的高效策略
  • 网站内容被收录但搜索流量极低?从技术角度聊聊搜索引擎内容解析机制的变化
  • 计算机毕业设计之jsp基于SSM的在线学习平台
  • 51-C16+时钟+校时+喂食+水位+加水喂水+三餐3定时+声光提醒+OLED屏+手动+自动+(无线方式选择)-3(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • 彻底搞懂USART、UART、RS232、RS485、USB:嵌入式串口通信全家桶详解
  • 一文读懂大语言模型,普通人也能看懂的AI全景图
  • 四维流形对合Floer不变量:对称性、Seiberg-Witten理论与应用
  • 200 万 token 还是不够用?Codex 上下文浪费的根源和解法
  • 文件加密该选用什么软件,6 款适配多场景文件加密软件干货汇总
  • IDEA安装卡在“Configuring SDK”?(2024最新JDK 21+兼容性白皮书)
  • 2026山东咨询师CRM免费试用选型指南
  • Java毕业设计-基于 SpringBoot 的企业员工信息管理系统设计与实现 SpringBoot 框架下公司人事员工管理系统设计与实现(源码+LW+部署文档+全bao+远程调试+代码讲解等)
  • 一台设备联网,其实没有你想象得那么简单
  • 如何使用 OpenCode 模型免费运行 Claude 代码
  • VMware虚拟机安装Windows10系统
  • 网络安全零经验尝试技术手段破解邻居WIFI