一、查看当前显示的Activity
linux:
adb shell dumpsys activity | grep "mFocusedActivity"
windows:
adb shell dumpsys activity | findstr "mFocusedActivity"
二、查看手机分辨率
adb shell wm size
adb shell dumpsys window displays
(一)基础操作
安装app
adb install -r xxx.apk //覆盖安装,保留数据和缓存文件
adb install -s xxx.apk //安装apk到sd卡
adb install -f xxx.apk //安装apk到内部系统内存
adb install -d xxx.apk //安装低版本Apk
adb install -g xxx.apk //准许Apk manifest中的所有权限
获取安装位置
adb shell pm get-install-location
卸载app
adb uninstall <package>
adb uninstall -k <package> //卸载app但保留数据和缓存文件
重启手机
adb reboot
启动adb服务
adb start-server
关闭服务
adb kill-server
进入shell环境
adb shell
(二)设备信息查看
查看所连接的设备以及设备所对应的序列号
adb devices
查看手机CPU架构(eg.ARMv7) 和内核个数
adb shell cat /proc/cpuinfo
查看系统的详尽内存信息,包含内核情况
adb shell cat /proc/meminfo
获取手机磁盘空间
adb shell df
获取手机系统版本
adb shell getprop ro.build.version.release
获取机器MAC地址:
adb shell cat /sys/class/net/wlan0/address
查看wifi密码
adb shell cat /data/misc/wifi/*.conf
(三)pm / am相关
清除应用的数据
adb shell pm clear <package>
查看App路径
adb shell pm path <package>
查看所有已安装的应用的包名
adb shell pm list packages -f
查看含有“google”字段的应用的包名
adb shell pm list packages google
查看第三方应用的包名
adb shell pm list packages -3
启动某个应用的某个Activity
adb shell am start -n packagename/packagename.activityname
如:adb shell am start -n com.company.appname/ .SplashActivity -es url http://www.baidu.com
//-es表示需传递参数,其中url表示参数名,链接表示具体参数值
拨打电话
adb shell am start -a android.intent.action.CALL -d tel:10086
打开网站
adb shell am start -a android.intent.action.VIEW -d http://www.baidu.com
(四)进程 / 服务查看
查看进程信息
adb shell ps | grep xxx
查看指定进程状态
adb shell ps -x [pid]
周期性地打印出进程运行队列、系统切换、CPU时间占比等情况
adb shell vmstat
各进程内存使用情况
adb shell procrank
杀死一个进程
adb shell kill [pid]
查看后台services信息
adb shell service list
(五)dumpsys系列
查看当前手机所支持的dump服务
adb shell dumpsys -l
查看包信息 Package Information
adb shell dumpsys package
adb shell dumpsys package packages | grep <package> //查看某个app资源路径
查看内存使用情况
adb shell dumpsys meminfo | grep xxx
adb shell dumpsys meminfo <pid> // 输出指定pid的内存使用情况
adb shell dumpsys meminfo --package <package> // 输出指定包名内存使用情况
adb shell top -m 6 //查看内存占用前6的app
查看栈顶Activity,可以用来获取包名,查看其它app的包名
adb shell dumpsys activity top
查看渲染耗时
adb shell dumpsys gfxinfo <package> > /sdcard/fps.txt
取出文件:adb pull /sdcard/fps.txt /Users/admin/Downloads/1234.txt
查看am的状态
adb shell dumpsys activity
Memory Use Over Time
adb shell dumpsys procstats
(六)文件操作
移动文件/文件夹
adb shell mv path/file newpath/file
新建文件夹
adb shell mkdir path
新建文件
adb shell touch filename
重命名文件/文件夹
adb shell rename path/filename newpath/newfilename
查看文件内容
adb shell cat file
从手机复制文件到电脑
adb pull /data/anr/traces.txt /Users/admin/Downloads/1234.txt
从电脑向手机发送文件
adb push foo.txt /sdcard/foo.txt
(七)log相关
查看日志
adb logcat | grep xxx
日志输出到文件
adb logcat -d > ~/Desktop/logcat.txt //保存到桌面,需要android.permission.READ_LOGS
清除log缓存
adb logcat -c
(八)其他
连接到指定的ip,通常配合wifidebug
adb connect <device-ip-address>
跑monkey
adb shell monkey -v -p <package> 500 // 跑500次
截屏
adb shell /system/bin/screencap -p /sdcard/screenshot.png
adb pull /sdcard/screenshot.png ./Dowload/screenshot.png(保存到电脑)
屏幕录制
adb shell screenrecord --time-limit 30 /sdcard/demo.mp4
adb pull /sdcard/demo.mp4 ./Downloads/