网站首页 > 编程文章 正文
adb 的概念
adb 即 Android Debug Bridge 。在窗口输入 adb 即可显示帮助文档。adb 实际上就是在后台开启一个 server,会接收 adb 的命令然后帮助管理,控制,查看设备的状态、信息等,是开发、测试 Android 相关程序的最常用手段。若是连接出现问题可以使用 adb kill-server来断开并重新连接。
通常 adb 都是通过数据线连接到电脑的,但是也可以使用 adb tcpip来使用 TCP 的方式连接手机,这样能脱离数据线服务,甚至可以借助转发的形式,不需要部署在同一路由器下就可以进行连接。开启 TCP 连接以后使用 adb connect 可以来连接开启了 TCP 连接的手机。
Android APP 的信息获取
- adb devices
- 这个应该是最常见的 adb 命令之一了,无论是开发、测试都会经常遇到。这条命令比较简单,就是列出当前连接的所有设备(包括模拟器)
- 日志命令
- adb logcat这个命令也很常用,用于获取手机的 log,但是会输出很多内容,可以使用 grep 或者 Windows 上的 findstr 来过滤。
使用 grep Displayed 就可以过滤出已经显示的 APP 例如微信,play 商店。可以借助此命令来找到一些关心的信息。当然也可以用它来抓取 app 的日志,定位分析问题。例如adb logcat -v time | grep "xxx" > appLog.log其中 xxx 为包名或者关键字。
还可以用以下字母来指定不同级别的信息:
V — 明细 verbose(最低优先级)
D — 调试 debug
I — 信息 info
W — 警告 warn
E — 错误 error
F — 严重错误 fatal
S — 无记载 silent
- 启动命令
adb shell
am
start
-n
com.android.vending/.AssetBrowserActivity
-S
使用 此命令把上面获取到的 play 商店的包名和 activity 传入即可启动 app。其中 am 表示 ActivityManager 用来管理应用活动、窗口。-S 表示启动之前先杀掉原有程序
- 安装命令
adb
install
然后给出包名即可
- 获取 APP 入口
aapt
dump
badging
xxx
| grep
launchable-activity
其中 xxx 为安装包
- 收集日志数据
adb
bugreport
此命令可以用于手机日志数据用于分析,包括耗电量,CPU 等
adb shell
adb shell 是 Linux 的 shell,可以用来调用 Android 内置的命令。adb shell 是交互式的,可以做很多事情,包括 pull/push 文件,输入等。
- 清理包的数据
adb
shell
pm
clear
com.android.vending
即可对包的数据进行清理,清理以后权限也会清除,恢复到刚安装完的状态。pm 即包管理工具,与 am 对应
- 获取界面的 xml
adb
shell
"uiautomator dump && cat /sdcard/window_dump.xml"
把当前界面的每个控件、元素都变成 xml 中的节点,中间包含了各个控件的属性,例如是否可点击等。
dumpsys
dumpsys 是很常用的一部分命令,所以单独列出来整理
- 获取当前的 activity
adb
shell
dumpsys
a
ctivity
top
- 获取 activities 的记录,可以获取到 appium 依赖的原始 activity
dumpsys
activity
activities
- 获取特定包基本信息
adb
shell
dumpsys
package
com.android.vending
再配合 grep 即可筛选出需要的信息
- 获取通知信息
adb
shell
dumpsys
notification
对于不同手机,通过 UI 层面下拉获取通知信息可能对于脚本的兼容性有影响,所以可以使用此命令获取然后通过 title,text 等筛选出需要的通知内容
- 获取内存信息
adb
shell
dumpsys
meminfo
com.android.settings
- 获取 CPU 信息
adb
shell
dumpsys
cpuinfo
- 获取 GPU 绘制分析
adb
shell
dumpsys
gfxinfo
com.android.settings
其中 内存、CPU、GPU 信息获取可以用于分析性能等问题
猜你喜欢
- 2025-05-02 Intel下代CPU猛料:性能提升犹如奔腾4到酷睿
- 2025-05-02 带你快速搭建Hadoop运行环境(hadoopha搭建)
- 2025-05-02 DOTA2东南亚服黑话及常用缩写合集
- 2025-05-02 解决麒麟系统传书消息发送失败的问题
- 2025-05-02 AMD 20.7.2新版显卡驱动测试:实测提升11% 只需要动动手指
- 2025-05-02 iOS端OneDrive应用更新:支持3D Touch
- 2025-05-02 免费的报表工具—JimuReport 积木报表 v1.6.4 稳定版本发布
- 2025-05-02 又被监视了?网友:苹果手机上脸书自动打开摄像头
- 2025-05-02 你的红米Note9Pro屏幕还好吗?一招教你看屏幕厂商
- 2025-05-02 【故障解决】麒麟系统右下角网络图标取消显示叹号
你 发表评论:
欢迎- 最近发表
-
- 数据不丢失 从Windows 11的DEV版降级到正式版
- Win11学院:在Windows11 25905预览版中如何启用Dev Drive
- DEVC++的卸载(devcon卸载驱动)
- win11 dev 开发版 升级攻略完整版
- 最新Windows11+Windows10系统各种版本永久激活密钥以及下载链接
- 想学Python,却还记不住语法?神仙书籍 python背记手册双手奉上
- 如何用Python语言开发大型服务器程序
- 30天Python 入门到精通(python零基础入门到精通)
- 入门扫盲:9本自学Python PDF书籍,让你避免踩坑,轻松变大神!
- 学好Python需要看的4本书推荐(学python好用的书)
- 标签列表
-
- spire.doc (59)
- system.data.oracleclient (61)
- 按键小精灵源码提取 (66)
- pyqt5designer教程 (65)
- 联想刷bios工具 (66)
- c#源码 (64)
- graphics.h头文件 (62)
- mysqldump下载 (66)
- sqljdbc4.jar下载 (56)
- libmp3lame (60)
- maven3.3.9 (63)
- 二调符号库 (57)
- 苹果ios字体下载 (56)
- git.exe下载 (68)
- diskgenius_winpe (72)
- pythoncrc16 (57)
- solidworks宏文件下载 (59)
- qt帮助文档中文版 (73)
- satacontroller (66)
- hgcad (64)
- bootimg.exe (69)
- android-gif-drawable (62)
- axure9元件库免费下载 (57)
- libmysqlclient.so.18 (58)
- springbootdemo (64)
本文暂时没有评论,来添加一个吧(●'◡'●)