参考来自:https://www.jianshu.com/p/5980c8c282ef
1.ADB
adb工具即Android Debug Bridge(安卓调试桥) tools。用于通过电脑端与模拟器或者真是设备交互。在某些特殊的情况下进入不了系统,adb就派上用场啦!.包含如下几个部分:
- Client端, 运行在PC. 用来发送adb命令.
- Deamon,守护进程, 运行在调试设备中, 即的调试手机或模拟器.
- Server端, 作为一个后台进程运行在开发机器中, 即你的开发PC机. 用来管理PC中的Client端和手机的Deamon之间的通信.
2. 常用命令
- 启动adb:adb start-server
- 查看已经连接的设备:adb devices
- adb logcat: 打印log信息
- 发送文件到设备:adb push
- 下载文件到电脑:adb pull 手机文件路径 电脑目标路径
- 截屏命令:adb shell screencap /sdcard/文件名.png
- 杀死adb:adb kill-server
- adb连接应用:adb connect …(地址)
- adb 命令控制:adb shell
- adb connect/disconnect:通过wifi远程连接手机调试.
- 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 pm
:pm即package manager.
用来执行package相关的操作, 例如安装卸载, 查询系统的安装包等.
指令 | 说明 | 备注 |
---|---|---|
list packages | 列出满足filter条件的所有包 | |
list permissions | 列出该Group的所有权限 | |
list features | 查看系统支持哪些feature | 例如蓝牙, wifi, 摄像头等. |
install /uninstall | 安装卸载 | |
clear | 清除应用数据 |
- adb shell screencap:截屏
- adb shell screenrecord:录屏
- adb shell dumpsys:强大的dump工具, 可以输出很多系统信息. 例如window, activity, task/back stack信息, wifi信息
指令 | 说明 | 备注 | 细分参数 |
---|---|---|---|
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 | 输出当前窗口相关信息 | / |