adb知识

2023-10-17 09:29:08 浏览数 (2)

一、原理:

adb客户端:能够对adb服务下发指令或命令的工具

server服务端:adb.exe执行之后的进程,表示adb的服务端,通过服务端与手机上的adb守护进程进行通信

adb守护进程 : 随着Android系统的启动而启动,只有当Android关闭后,才会关闭

二、adb常用命令

1、查看设备、启动和关闭adb服务

adb devices 查看手机的设备ID名称以及状态

ffhash-234 表示手机设备的ID名称,device表示设备处于在线状态

adb start-server 启动adb服务

adb kill-server 关闭adb服务

2、获取包名和界面名

包名:APP包名,通过APP的包名来区分不同的APP,APP包名是唯一的

界面名(启动名):相当于web页面当中的链接地址,在APP当中,每个界面都有一个名字

操作:打开相应的APP,

windows: adb shell dumpsys window windows | findstr mfocusedApp

linux/macos: adb shell dumpsys window | grep mFocusedApp

通过aapt获取包名和界面名:

aapt dump badging app安装包的路径和名称

包名:package:name = ' '

界面名:launchable-activity:name = ''

3、 安装卸载APP

adb 安装 :adb install 路径/安装包名称

adb 卸载 :adb unistall 包名

4、上传下载文件

上传:将电脑的文件上传到手机

adb push 电脑上的文件路径 手机的路径

adb push ./monkey.txt /sdcard

下载:从手机上下载文件到本地

adb push 手机的文件路径 电脑的文件夹路径

adb push /sdcard/monkey.txt D:opt

5、查看日志信息

为什么要获取日志信息:用来给开发定位问题

adb logcat 来查看相关的日志信息

通过管道符 > 将日志输出的本地

adb logcat > D:log.txt

6、APP的启动速度(性能速度)

测试APP启动速度的命令:

adb shell am start -W 包名/界面名

ThisTime 该界面启动耗时

TotaTime:应用自身启动耗时

WaitTime : 系统启动耗时

与竞品做对比:

需要关注的是TotaTime ,多次测试,取平均值

三、稳定性测试

monkey 集成在adb工具中,主要用来做稳定性测试用的,monkey是通过Java语言编写的一种稳定性测试工具

主要用来操作APP会不会出现crash的现象

monkey参数:

-p 参数 :对指定的app进行随机操作

adb shell monkey -p com.baidu.homework 100(100次随机时间)

-v 参数 :表示的记录信息的级别

level 0 : adb shell monkey -p com.baidu.homework -v 100 默认级别

level 1 : adb shell monkey -p com.baidu.homework -v -v 100 打印出来的信息会比较详细,只打印跟本程序相关的日志信息

-s 用于指定伪随机数,如果两次的伪随机数相同 ,那么两次的操作步骤、流程、操作时间完全一样

主要的作用,就是用来复现上次的问题

adb shell monkey -p com.baidu.homework -v -v 10 100

-throttle 用来指定随机时间的间隔时间单位是毫秒

日志分析:

如果在日志中出现了ANR(application not responsing)

Exception ,说明可能程序崩溃

adb shell "monkey

-p com.example.text

-p com.huawei.ohos.inputmethod

-v -v --throttle 300 --ignore-crashes --ignore-timeouts --monitor-native-crashes 10000000

2>/sdcard/error.txt 1>/sdcard/info.txt"

0 人点赞