系统相关软件测试Android

adb 实际工作高频用法

2022-02-26  本文已影响0人  崔某

adb 命令和 Linux 命令用法很相似,通过 adb shell 进入命令行后,用法基本和linux命令没有什么区别,当然也可以通过 adb shell [linux命令] 配合使用,如:adb shell ls -l /sdcard/

1、服务命令

adb help             --adb 帮助

adb version          --查看adb版本

adb nodaemon server  --查看adb占用的端口号

adb remount          --将system分区重新挂载为可读写分区

adb root             --以root权限运行adb服务

adb kill-server      --关闭adb服务

adb start-server     --开启adb服务

adb -P 端口 adb-server  --指定adb-server运行端口(默认端口5037)

2、连接设备

【前提】:开发者选项开启USB调试

adb tcpip 5555
adb connect IP地址
# 断开连接: adb disconnect

3、查询已连接设备/模拟器

adb devices
【输出状态】:
# offline:表示设备未连接成功或无响应。
# device:设备已连接,
# no device:没有设备/模拟器连接

4、设备命令

adb reboot                    --重启设备

adb reboot bootloader         --重启到bootloader模式,即刷机模式

adb reboot recovery           --重启到recovery模式,即恢复模式:

5、查看设备基本信息

adb get-serialno                            --获取设备序列号

adb shell getprop ro.product.brand          --获取设备品牌

adb shell getprop ro.product.model          --获取设备型号

adb shell getprop gsm.sim.operator.alpha    --获取运营商

adb shell getprop ro.build.version.sdk      --获取SDK版本

adb shell getprop ro.build.version.release  --获取Android版本

adb shell cat /proc/cpuinfo                 --获取cpu序列号

adb shell dumpsys battery                   --查看电池信息

adb shell dumpsys audio                     --获取音频流信息

adb shell dumpsys wifi | findstr Wi-Fi     --获取WIFI连接信息

adb shell wm size                           --查看屏幕分辨率

adb shell wm density                        --查看屏幕密度

6、查看设备性能信息

adb shell ps                                --查看进程列表
adb shell ps  | findstr 包名                --查看某个应用的进程ID
adb shell kill 进程ID                       --杀死一个进程

adb shell top                               --查看实时资源占用
adb shell top -m 6                          --查看占用内存前6的app
adb shell top -d 10                         --间隔10秒刷新一次

adb shell dumpsys cpuinfo                   --查看CPU信息
adb shell dumpsys gfxinfo apk包             --查看某应用的GPU绘制分析
adb shell dumpsys meminfo apk包             --查看某应用的内存占用

adb shell service list                      --查看后台services信息

7、文件操作命令

adb pull <设备文件路径> [电脑存储路径]  --导出设备文件到电脑
adb push <电脑文件路径> [设备存储路径]  --导入电脑文件到设备

8、apk应用管理命令

adb shell pm list packages       --获取设备内所有包名
常用参数:
-3  查看第三方应用
-s  查看系统应用
-d  查看被停用的应用
-e  模糊查询某个应用
-f  查看关联文件
-i  查看package对应的安装者
-u  查看被卸载过的package

【安装应用】
adb install apk包名
常用参数:
-r  覆盖安装(保留数据)
-d  降级覆盖安装
-g  赋予所有运行时权限
-l  将应用安装到保护目录/mnt/asec
-s  将应用安装到sdcard目录

【卸载应用】
adb uninstall apk包名
常用参数:
-k  卸载应用时保留数据和缓存目录

【其他命令】
adb shell pm path 包名                                           --获取某个包名的安装路径   

adb shell dumpsys window | findstr mCurrentFocus                 --获取当前正在运行的应用包名/类名

adb shell am start -n packageName(包名)/ActivityName(类名)   --启动应用

adb shell am force-stop 包名                                     --强制关闭应用

adb shell pm clear 包名                                          --清除应用数据和缓存

adb shell dumpsys package 包名                                   --查看某个apk的应用信息、版本信息

9、log命令

Android系统的日志分为两部分:底层的Linux内核日志输出到/proc/kmsg, Android日志输出到/dev/log。Android的Log等级通常有六类,按照日志级别由低到高分别是:Verbose、Debug、Info、Warning、Error、Assert。

adb logcat   --查看日志
常用参数:
参数  日志格式
-v    brief
-v    process
-v    tag
-v    raw
-v    time
-v    threadtime
-v    long
示例:adb logcat -v time > [电脑文件路径]

adb logcat -c              --清空日志缓存
adb logcat -g              --查看日志缓冲区大小
adb logcat -G 10M          --设置日志缓冲区大小

adb shell dmesg            --查看内核日志

10、快捷操作(android.intent.action 预定义)

adb shell am start -a android.intent.action.DIAL -d tel:10010                            --编辑电话

adb shell am start -a android.intent.action.CALL -d tel:10010                            --打电话

adb shell am start -a android.intent.action.SENDTO -d sms:10086 --es sms_body "1091"     --编辑短信

adb shell am start -a android.intent.action.VIEW -d http://www.baidu.com                 --打开网址

adb shell am start -a android.intent.action.MUSIC_PLAYER                                 --打开音乐播放器

adb shell am start -a "android.intent.action.VIEW" -t "audio/mp3" -d "file:///sdcard/music.mp3"    --播放指定音乐

// 更多用法请自行百度

11、模拟用户操作

# 点击
adb shell input tap [x] [y]                        -- 点击(x,y)坐标点

# 滑动
adb shell input swipe [x1] [y1] [x2] [y2]          --从坐标(x1,y1)点滑动至(x2,y2)后松开
adb shell input swipe [x1] [y1] [x2] [y2] 1000     --从坐标(x1,y1)点滑动至(x2,y2)后松开,耗时1000毫秒

# 常用Keyevent 键值宏定义(其他可自行百度)
adb shell input keyevent 3        --点击HOME键
adb shell input keyevent 4        --点击BACK键
adb shell input keyevent 26       --点击电源键
adb shell input keyevent 187      --打开最近应用

# 长按
adb shell input keyevent --longpress [keyevent键值]

# 事件监听
adb shell getevent
上一篇 下一篇

猜你喜欢

热点阅读