手机测试之Android Debug Bridge

发表于:2024-1-08 09:14

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:风兮水寒-1    来源:博客园

  1.1 Android系统主要的目录
  1.2 ADB工具介绍
  ADB的全称为Android Debug Bridge,就是起到调试桥的作用,是Android SDK里面一个多用途调试工具,通过它可以和Android设备或模拟器通信,借助adb工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等。其实简而言说adb就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。
  1.3 ADB基本命令介绍
  1、查看设备 adb devices
  adb devices这个命令是查看当前连接的设备,连接到计算机的Android设备或者模拟器将会列出显示。
  ü device: 表示找到设备并与adb连接上。
  ü no device: 表示当前没有模拟器在运行,或没有找到任何设备。
  ü offline: 表示设备或模拟器没有与adb相连或没有响应。
  说明:
  (1) 如果出现多个device时,说明当前有多个设备或模拟器在运行,此时使用adb时,需要用-s指定一个目标设备。
  (2) adb devices没有显示连接设备,可以使用一下命令。
  ü adb kill-server
  ü adb start-server
  ü adb connect 127.0.0.1:7555  连接MuMu模拟器
  2、查看adb版本及设备信息
  adb version        获取adb版本
  adb get-serialno   获取设备的序列号
  adb get-state      获取模拟器/设备的当前状态
  3、安装软件 adb install + 安装包路径
  adb install D:\android\com.zmhj.hehe.apk
  说明: apk文件安装后临时存储在/data/local/tmp目录中
  4、卸载软件 adb uninstall 文件名
  adb uninstall com.zmhj.hehe
  说明:
  (1) 如果加-k参数,为卸载软件但是保留配置和缓存文件
  (2) 应用安装目录在/data/data   例如:com.ulang.jjk
  (3)包名编写规范:全小写字母,多层之间点分隔
  ü 使用公司域名倒着写,后加应用名,达到:全球唯一
  ü 比如:百度App          包名:com.baidu.mm
  ü 比如:达内App          包名:cn.tedu.mm
  l 扩展:获取安装包对应的包名?
  ü adb shell pm list packages
  ü adb shell pm list packages 软件名
  ü aapt dump badging D:\android\com.zmhj.hehe.apk
  5、从电脑上发送文件到设备 adb push 本地路径 远程路径
  用push命令可以把本机电脑上的文件或者文件夹复制到设备
  adb push D:\android\com.ulang.jjk.apk /data/
  说明:adb可以使用选项,挑选使用某设备,常用选项?(面试题)
  ü adb -d push ... 针对唯一的真机(USB数据线和PC连接) device
  ü adb -e push ...  针对唯一的模拟器  emulator
  ü adb -s 设备id push ...通过设备id指定具体设备 真机或模拟器
  6、从设备上下载文件到电脑 adb pull 远程路径 本地路径
  用pull命令可以把设备上的文件或者文件夹复制到本机电脑
  adb pull /data/com.ulang.jjk.apk D:\test_apk
  说明:需要在D盘下创建一个文件夹test_apk
  7、在命令行中查看log信息 adb logcat
  adb logcat,表示实时抓取整个手机的log信息,ctrl+c结束命令行
  adb logcat [option] [filter-spec]
  案例:实时持续跟踪日志并返回PC端显示,不停止
  adb logcat
  案例:一次读取当前日志并返回PC端显示,停止
  adb logcat -d
  案例:将实时抓取log信息并保存到本地log.txt文件
  adb logcat > D:\logcat0.txt
  案例:获取的log.txt文件中加上时间信息
  adb logcat -v time > D:\logcat1.txt
  案例:获取网络射频信息
  adb logcat -b radio > D:\logcat2.txt
  案例:获取事件消息   
  adb logcat -b events > D:\logcat3.txt
  案例:获取log信息加上时间,显示缓冲区以及电话和系统相关的日志
  adb logcat -v time -b main -b radio -b system > logcat4.txt
  技巧:查看命令的帮助手册
  adb logcat -help
  案例:获取级别不低于E的日志,保存在D:\logcat5.txt
  adb logcat -d *:E > D:\logcat5.txt
  8、进入设备或模拟器的adb shell
  根据日志进行分析,寻找问题:根据crash(崩溃、闪退)、anr(应用无响应)、exception(异常)、error(错误)作为线索搜索日志,找到对应进程id、包名、相对位置,根据日志查看和分析测试中隐含的、容易遗漏的、底层的缺陷。
  adb命令是adb这个程序自己的命令
  adb shell是Android系统自带的命令,都保存在Android系统的/system/bin目录下,命令文件本质是shell脚本
  (1)查看设备系统全部进程
  adb shell ps
  (2)过滤进程
  abd shell ps | findstr 2588
  (3)查看CPU硬件的相关信息
  adb shell cat /proc/cpuinfo
  (4)查看内存的相关信息
  adb shell cat /proc/meminfo
  (5)查看I/O内存分区的相关信息
  adb shell cat /proc/iomem
  (6)获取手机型号
  adb shell cat /system/bulid.prop | findstr “ro.product.model”
  (7)获取电池电量的相关信息
  adb shell dumpsys battery
  (8)获取某个app的cpu占用情况
  adb shell dumpsys cpuinfo | grep hehe
  (9)包管理工具,获取安装包列表
  adb shell pm list packages
  (10)实时刷新查看Android系统的性能情况
  adb shell top
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号