这篇文章上次修改于 753 天前,可能其部分内容已经发生变化,如有疑问可询问作者。
记录常用的一些命令记录:
adb shell pm list package | grep ali ### 搜索包含ali的已经安装的包名
adb shell dumpsys activity | grep ali ### 搜索包含ali的已经安装的activiy
adb shell dumpsys activity activities ### 获取activity
adb connect 127.0.0.1:62001 ### 连接夜神模拟器
adb shell pm list packages -f ### 获取模拟器所有包名并且包括APK路径
adb shell pm path packageName ### 获取包名对应的APK路径
adb shell pm clear packageName ### 清理应用数据
adb shell am start -n 包名/Activity类名 ### 启动应用
adb shell am force-stop 包名 ### 关闭应用
adb shell /system/bin/screencap -p /sdcard/screenshot.png ### 截图
adb shell screenrecord /sdcard/demo.mp4 ### 录屏
adb pull ### 拉取文件
adb push ### 上传文件
adb shell am
am即activity manager.
该命令用来执行一些系统动作, 例如启动指定activity, 结束进程, 发送广播, 更改屏幕属性等. 调试利器.
指令 | 说明 | 备注 |
---|---|---|
start |
根据intent指向启动Activity | Intent可以是显示的指向activity, 也可以是ACTION方式, 并且可以添加flag, data等参数信息. |
startservice |
启动Service | 可以添加flag, data等参数信息. |
broadcast |
发送广播 | 可以添加flag, data等参数信息. |
monitor | 启动一个Crash和ANR的监听器 | 如有Crash或ANR会在控制台输出相关信息. |
force-stop |
强制停止该包相关的一切 | 传入package name. |
kill |
杀死该包相关的所有进程 | 传入package name. |
kill-all | 杀死所有后台进程 | |
display-size WxH | 改变显示的分辨率 | 例如adb shell am display-size 1280x720, 手机可能不支持. |
display-density |
改变显示的density | 例如adb shell am display-density 320, 手机可能不支持. |
adb shell dumpsys
强大的dump工具, 可以输出很多系统信息. 例如window, activity, task/back stack信息, wifi信息等.
常用dumpsys:
指令 | 说明 | 备注 | 细分参数 |
---|---|---|---|
activity | 输出app组件相关信息 | 还可以用细分参数获得单项内容, 下同. 例如adb shell dumpsys activity activities来获取activity task/back stack信息. | activites, service, providers, intents, broadcasts, processes |
alarm | 输出当前系统的alarm信息 | / | / |
cpuinfo | 输出当前的CPU使用情况 | / | / |
diskstats | 输出当前的磁盘使用状态 | / | / |
batterystats | 电池使用信息 | / | / |
package | package相关信息, 相当于pm功能的集合 | 输出诸如libs, features, packages等信息 | / |
meminfo | 输出每个App的内存使用和系统内存状态 | 可以指定包名, 例如adb shell dumpsys meminfo com.anly.githubapp | / |
window | 输出当前窗口相关信息 | / | policy, animator, tokens, windows |