常用的adb命令总结

常用的adb命令

adb运行原理:
1、PC端的adb server与手机端的守护进程adbd建立连接;
2、PC端的adb client通过adb server转发命令给守护进程adbd;
3、adbd守护进程接收到命令后解析运行。

命令格式:

adb [-s <serialNumber>] <command>
如果连接多台设备时,需要使用-s来指定相应的设备来运行

基本用法:
1、查看adb版本

adb version

2、查看已经连接的设备信息

adb devices

3、连接模拟器设备(ip+端口号,第一台夜神模拟器的端口号是62001)

adb connect 127.0.0.1:62001

4、指定adb server的网络端口号(默认是5037)

adb -P <port> start-server

5、查看应用列表(<filter>可以加字符,进行过滤,不加<filter>表示查出全部的包)

adb shell pm list package <filter>

也可以使用grep来过滤(windows系统需要先进到shell中)

adb shell
pm list package|grep str

6、开启adb server(在调用adb命令时,会自动开启)

adb start-server

7、停止adb server

adb kill-server

8、获取指定设备的分辨率

adb -s 127.0.0.1:62001 shell wm size

9、给指定设备安装apk包

adb -s 127.0.0.1:62001 install test.apk

应用管理:
1、安装指定路径下面的apk包

adb install <path_to_apk>

这里的adb install其实是分三步完成的:
1、push apk到设备/data/local/tmp目录下面
2、调用pm install安装apk
3、删除/data/local/tmp下面的apk包

2、卸载应用

adb uninstall [-k] <packageName>
-k参数表示卸载应用但是保留数据和缓存目录

3、清楚应用数据和缓存

adb shell pm clear <packageName>

4、 查看正在运行的程序

adb shell dumpsys activity services [<packageName>]

5、调用相应package的activity

adb shell am start [options] <INTENT>

6、强制停止某应用

adb shell am force-stop <packageName>

文件管理:
1、将手机设备中的文件复制到电脑

adb pull <手机中的文件路径> [电脑中的目录]
eg:adb pull /sdcard/test.txt  C:\test\

2、将电脑中的文件复制到手机设备

adb push <电脑中文件路径> <手机的目录>
eg:adb push C:\test\text.txt /sdcard/

模拟按键输入:
命令格式:
adb shell input keyevent <keycode>
根据不同的keycode来实现不同的功能

adb shell input keyevent 26  //按电源键
adb shell input keyevent 4  //按下返回键
adb shell input keyevent 82  //按下菜单键
adb shell input keyevent 3  //按下home键

输入框输入文字:

adb shell input text hello  
//在焦点处于某文本框时,命令用来输入文本

查看日志:adb logcat
命令格式:
[adb] logcat [<option>]…[<filter-spec>]…
常用用法:

  • 按级别过滤日志:

V:Verbose(级别最低,输出日志最多)
D:Debug
I:Info
W:Warming
E:Error
S:Silent(级别最高,什么也不输出)

adb logcat *:W
adb logcat *:V
  • 按照tag和级别过滤日志:

<filter-spec>可以由多个<tag>[:priority]组成

adb logcat ActivityManager:I MyApp:D *:S
表示:
输出tag为ActivityManager的info级别以上的日志
输出tag为MyApp的Debug级别以上的日志
输出tag为Silent级别的日志
  • 按照相应的日志格式输出日志:
    adb logcat -v <format>
    日志支持以下几种<format>:
    1、brief
    默认格式,格式为:<priority>/<tag>:<message>
    2、process
    格式:<priority>(<pid>) <message>
    3、tag
    格式为:<priority>/<tag>:<message>
    4、raw
    格式为:<message>
    5、time
    格式为:<datetime><priority>/<tag>(<pid>):<message>
    6、threadtime
    格式为:<datetime> <pid><tid><priority><tag>:<message>
    7、long
    格式为:[<datetime><pid>:<tid> <priority>/<tag>]
    <message>

清空日志:

adb logcat -c

查看内核日志:

adb shell dmesg

查看设备信息:
输出一些其他设备信息:

adb shell getprop <属性名>
adb shell getprop ro.product.model //查看设备型号
adb shell getprop ro.build.version.release //查看系统版本

查看硬件参数信息:

adb shell dumpsys battery //查看电池信息
adb shell dumpsys window displays//查看屏幕参数
adb shell ifconfig wlan0 //查看ip地址(连的wifi)
adb shell netcfg //查看更网络配置信息
adb shell cat /proc/cpuinfo //查看cpu信息
adb shell cat /proc/meminfo //查看内存信息
adb shell cat /sys/class/net/wlan0/address //查看MAC地址
adb shell cat /system/build.prop //更多硬件与系统属性

查看屏幕相关信息:

adb shell wm size //查看屏幕分辨率
adb shell wm size 480X1024 //设置屏幕分辨率
adb shell wm size reset //恢复原分辨率
adb shell wm density //查看屏幕密度
adb shell wm density 160 //设置屏幕密度
adb shell wm density reset //恢复原密度
adb shell wm overscan 0,0,0,200 //设置显示区域
adb shell wm overscan reset //恢复原显示区域

查看设置信息:

adb shell settings put global adb_enabled 0 //关闭usb调试模式
adb shell settings get secure android_id //查看设备id

使用功能:
1、重启设备

adb reboot

2、屏幕截图

adb exec-out screencap -p > sc.png //(这个命令直接截图保存在电脑)

或者

adb shell screencap -p /sdcard/1.png 截图保存到设备
adb pull  /sdcard/1.png 将截图保存到电脑

3、屏幕录制

adb shell screenrecord /sdcard/filename.mp4  屏幕录制
adb pull /sdcard/filename.mp4 导出到电脑

查看进程:

adb shell ps 
pid:进程id
ppid:父进程id

查看实时资源情况:

adb shell top

查看进程号uid:

adb shell dumpsys package <packagename>|grep userId=

凡是需要进入到shell中执行的命令,就是linux命令,跟linux操作系统下的命令使用一致

猜你喜欢

转载自blog.csdn.net/qq_41571224/article/details/105751658
今日推荐