游戏测试——adb基础

4 篇文章 0 订阅
4 篇文章 5 订阅

一.adb的概念及作用

adb,Android Debug Bridge,即“Android调试桥接器”,是一个Debug工具。
由于PC和真机/模拟器之间需要通过网络连接,我们的开发/测试工具是运行在PC上的,就需要Adb连接PC和真机/模拟器,网络远程调试/测试应用。
简单来说,使用adb,就可以通过电脑调试手机。

二.adb的安装

下载:
Google早已经提供了单独的工具包,不需要进行安卓SDK的完全安装。点击下方链接可直接下载:
§ https://dl.google.com/android/repository/platform-tools-latest-windows.zip
安装步骤:
step 1. 解压缩文件。(位置随意)

Step 2. 设置全局变量。
鼠标右键选取“此电脑”——“属性”
在这里插入图片描述

选中“高级”,再点击“环境变量”
在这里插入图片描述

在系统变量下选中“Path”,点击编辑
在这里插入图片描述

点击新建,再加入下面的代码
前面step1解压缩的文件位置; %Android%;
在这里插入图片描述

最后点击确定。

Step 3. 至此,你已经可以随意调出命令行进行ADB操作。
检测adb是否可用:
键盘同时按住“win”+“r”,在弹出的输入框里输入“cmd”,点击“确定”
在这里插入图片描述

随后输入 adb version
在这里插入图片描述

出现此图表示配置成功↑
如果出现“非内部命令或者函数等内容”则是“全局变量设置不对引起”,需重新设置,注意标点符号的全角半角。

移动端设置:
Step 4. 将安卓设备“设置”中的“开发人员选项”打开,“USB调试”打开。
在这里插入图片描述

不同安卓版本与品牌显示内容与步骤在此不尽相同,不会的可以百度查询;
部分没有显示这项内容的设备需要其它办法调出;
高版本安卓系统会要求在“开发人员选项”中选择特定USB连接方式下进行调试,据经验丰富的朋友说,华为系列只能设置在充电模式下进行“USB调试”。

Step 5. USB数据线与PC相连,在安卓设备弹出的选项窗口,一一勾选。
在这里插入图片描述

华为系列手机,可能会出现两步。

Step 6. 输入代码 “adb devices” 测试安卓设备是否与PC间可以正常进行通讯。
在这里插入图片描述

当我们看不到最后一行内容时,可能是因为调试权限没有允许造成,请在手机上设置好。

到这一步,你就能够正常的使用adb命令来操控该手机了。

三.adb的基础命令

一、 常用命令:

  1. 查看设备连接:adb devices
    查看连接设备,模拟器的ip、端口或者真机的UID
    在这里插入图片描述

上面00000开头的一串字符就是该设备的序列号(序列号的开头不一定都是这个格式,通常是看“device”前面的字符串)
你也可以使用命令 adb get-serialno 获取设备序列号
2. 查看设备状态:adb get-state
用于查看模拟器或者手机的当前状态
device 正常连接
unknown 没有连接设备
offline 连接出现异常,设备无响应
unauthorized 未授权
在这里插入图片描述

  1. 停止/启动adb:
    模拟器在运行一段时间后,adb服务有可能会出现异常(在Windows进程中可找到这个服务,该服务用来为模拟器或通过USB数据线连接的真机服务)。这时需要重新对adb服务关闭和重启。
  • adb kill-server:停止adb服务
  • adb start-server:启动adb服务
    在这里插入图片描述

关闭成功无提示,启动成功有提示。
4. 重启设备:adb reboot
5. pc↔真机拷贝文件:

  • adb pull [设备上文件路径\文件名] [PC 保存路径]:设备上文件拷贝到 PC 上
  • adb push [PC 文件路径\文件名] [设备上的保存路径]:PC 上的文件拷贝到设备上
    这两条命令,前面要加上文件名,后面可不加(后面若加了文件名,则可改名,要记得加上相应的后缀)
    在这里插入图片描述
  1. 记录并打印日志:adb logcat
    用于查看最近的日志活动,按住ctrl+c可停止打印
    ○ >d:/log.txt:将日志保存到d盘,并取名为log.txt
    ○ -v time 打印时间
    ○ -v color 使用不同的颜色来显示每个优先级
    ○ -f 将日志输出到文件
    ○ -c 清理已存在的日志

二、shell篇:

①进入和退出设备

  1. 进入安卓命令行:adb shell
    进入后可以使用Linux命令,如ls、cd、mv等等
    在这里插入图片描述

  2. 退出安卓命令行:exit 或 ctrl+d
    在这里插入图片描述

②直接在设备外使用shell命令
上面说到,在进入安卓命令行后,可以使用Linux命令,比如我这里输入date查看时间
在这里插入图片描述

但是其实我也可以直接在设备外使用命令,输入 adb shell date
在这里插入图片描述

③adb shell 模拟手机操作

  1. 点击屏幕:adb shell input tap x y
    x、y均为坐标
    在这里插入图片描述

  2. 输入文本:adb shell input text [文本]
    [文本]即要输入的文本内容
    可以直接写,也可以加上引号
    在这里插入图片描述

手机上输入的内容分别是:5555、5555、abc
如果希望手机上输入的内容带引号如:“5555”,则需要添加三个斜杠——\\,如下图

在这里插入图片描述

输入特殊字符,就需要添加转义字符“\”
在这里插入图片描述

按照上面的方式,手机上输入的内容就为:&
3. 模拟滑动:adb shell input swipe x1 y1 x2 y2 [time]
x1、y1为起始坐标,x2、y2为终止坐标,即模拟手指从起始坐标滑动到终止坐标;
[time]为滑动时长,单位为毫秒,可以不写
在这里插入图片描述

手机的坐标在设置-其它设置(也可能是别的,每个手机不一样)-开发者选项-指针位置,然后打开“指针位置”的选项,在点击屏幕的时候就能看到坐标
4. 屏幕截图:adb shell screencap -p /sdcard/img.png
截图会保存在设备端
5. 屏幕录制:adb shell screenrecord /sdcard/filename.mp4
录频会保存在设备端,sdcard为保存的路径,filename为保存的视频的文件名(注意:如果要录制多个视频,一定要记得改文件名,否则新视频会覆盖老视频)
默认录制时间和最长录制时间都是180s
screenrecord后可接参数
–size [width]x[height] 视频的尺寸,比如 1280x720,默认是屏幕分辨率。
在这里插入图片描述

该尺寸指的是录制整个屏幕后(录制的时候还是录制的全屏),保存下来的尺寸,而不是指只录制这么大区域的尺寸
--bit-rate [rate] 视频的比特率,默认是 4Mbps。
--time-limit [time] 录制时长,单位秒。

在这里插入图片描述

上图 --time-limit 10:表示限制录时长为10s
--verbose 输出更多信息。

查看目录结构:adb shell ls
6. 模拟点击返回键:adb shell input keyevent 4
7. 模拟点击home键:adb shell input keyevent 3
8. 其它:adb shell input keyevent [keycode]
在这里插入图片描述

④应用相关

  1. 列出手机装的所有app的包名:adb shell pm list packages

  2. 显示系统自带应用:adb shell pm list packages -s

  3. 显示第三方应用:adb shell pm list packages -3

  4. 启动应用:adb shell am start [包名]

  5. 杀进程:adb shell am force-stop [包名]

  6. 安装 apk:adb install [apk 在计算机中的路径]
    -r : 如果已安装则覆盖安装
    -s :安装 apk 到 sd 卡
    -r、-s要放在路径的前面
    在这里插入图片描述

    按住想要的文件直接拖动到cmd里,就能得到他的路径
    图中①是安装命令,②是提示安装成功
    在这里插入图片描述

    中间需要等待一会儿,电脑看不到任何提示,但是手机会弹出安装的选项框,最终还是需要手动才能安装
    在这里插入图片描述

    点击继续安装,手机上apk安装成功,电脑上弹出提示“Success”
    在这里插入图片描述

  7. 查看app包名:adb shell dumpsys window | findstr mCurrentFocus
    如何查看手机app的包名?
    ①.PC连接Android设备
    ②.Android设备中点开想要查看的app,app的任何界面都可以;
    ③.cmd命令行中输入:adb shell dumpsys window | findstr mCurrentFocus 查看包名
    在这里插入图片描述

    上面的①为包名,②为页面名

  8. 卸载 apk:adb uninstall [apk 包名]
    -k :卸载 app 但保留数据和缓存文件
    注意,手机安装apk后,有时候安装时的包名不能直接用来卸载
    在这里插入图片描述

    这个时候就需要使用上一条所写的命令adb shell dumpsys window | findstr mCurrentFocus来查看包名
    注意,卸载的时候只需要添加包名,不需要添加页面名

⑤系统相关
查看系统当前日期:adb shell date
查看电池状况:adb shell dumpsys battery
查看屏幕分辨率:adb shell wm size
查看屏幕密度:adb shell wm density
查看系统cup使用情况:adb shell cat /proc/cpuinfo
查看系统内存使用情况:adb shell cat /proc/meminfo
查看实时资源占用情况:adb shell top
查看占用内存前10 的app:adb shell top -s 10
查看进程:adb shell ps
查看bug报告:adb bugreport

查看安卓系统版本:adb shell getprop ro.build.version.release
显示安卓id:adb shell settings get secure android_id
查看IP地址:
adb shell ifconfig | find “Mask”
adb shell ifconfig wlan0 #设备连着 WiFi,可以使用命令来查看局域网 IP
adb shell netcfg # 上面两个无结果可以用这个,查看网络连接状态
查看MAC地址:adb shell cat /sys/class/net/wlan0/address # 设备不同可能地址不同
清除应用数据及缓存:adb shell pm clear <包名>

三、管理员权限

本节内容下使用的命令都需要先root

  1. 获取管理员权限:
    第一步:adb shell
    第二步:su
    或者
    直接输入:adb root
    输入su或者abd root后,如果命令行提示符是 $ 则表示没有 root 权限,是 # 则表示已 root。

  2. 查看连接过的wifi密码:cat /data/misc/wifi/*.conf

  3. 设置日期和时间:date -s [时间]
    如:date -s 20190531.131600 #将系统日期和时间更改为 2019 年 05 月 31 日 13 点 16 分 00 秒。

  4. 开启wifi:adb shell svc wifi enable

  5. 关闭wifi:adb shell svc wifi disable
    四、特殊命令:

  6. -s:用于指定设备
    例如我们此时连接了两个设备(假设设备分别为666和999),我们就可以按照以下格式指定操作某一台设备:
    adb -s 666 logcat :只打印666的日志
    adb -s 999 shell date:只查看999的日志
    在这里插入图片描述

  7. -d:指定当前唯一通过 USB 连接的 Android 设备为命令目标

  8. -e:指定当前唯一运行的模拟器为命令目标

  9. 【ctrl】+【c】:中断程序
    用于终止当前正在进行的事件

  10. 【ctrl】+【d】:键盘输入结束
    相当于 exit 命令

  11. 【Tab】:补全或补齐
    接在一串命令的第一个命令的后面,则为“命令补全”;
    接在一串命令的第二个命令以后时,则为“文件补齐”。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值