文章目录
adb简述
Android Debug Bridge
包含在Android SDK 平台工具软件包中,位置:android_sdk/platform-tools/adb.exe
设备启用adb
在搭载 Android 4.2 及更高版本的设备上,“开发者选项”默认隐藏。如需将其显示出来,点按 build 号七次。
- usb连接
大部分设备:usb连接 > 开发者选项中启用usb调试
小度音箱:dbp平台绑定设备sn > usb连接所绑设备 > 对设备说“打开技能开发助手” > 点击“打开adb连接”(打开后显示自动变为“关闭adb连接”) - wifi连接
主机调试设备连接到同一wifi > usb连接 > 设置设备监听端口5555上的TCP/IP连接adb tcpip 5555
> 拔掉usb > 通过ip地址连接adb connect device_ip_address:5555
端口被占了,自己随便改一个(不要改成常用端口就行)
device_ip_address:wifi设置 > 点击所连接wifi > 显示的信息里有ip地址
中文乱码
chcp 65001
可改成utf-8,解决乱码问题
常用命令adb命令
com.xxx.xxx:代指应用包名
snxxx:代指设备序列号
应用的安装/卸载
adb install com.xxx.xxx
adb uninstall com.xxx.xxx
参数:
adb -s snxxx install -r com.xxx.xxx
-
指定设备
当连接多个设备时,需要先指定设备再安装
-s,指定设备序列号 -
降级安装
当已有高版本的应用,又想要重新安装低版本时,会报错:[INSTALL_FAILED_VERSION_DOWNGRADE]
解决:
-r,取replace之意,强制重新安装
-d,取degrade之意,允许降级安装
使用shell
使用shell命令:通过adb shell
命令可以对设备发送shell命令。
adb shell <shell命令>
进入交互模式:输入adb shell
后直接回车,可以启动交互式shell。
退出交互模式:进入交互模式后,可以通过输入exit
或按Control+D
退出。
常用shell命令
am 模拟系统行为
activity manager,模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播等。
参数 | 含义 |
---|---|
-a | ACTION |
-d | DATA_URI |
-c | CATEGORY |
-e / --es | EXTRA_KEY / EXTRA_STRING_VALUE |
-e / --ez | EXTRA_KEY / EXTRA_BOOLEAN_VALUE |
-e / –-ei | EXTRA_KEY / EXTRA_INT_VALUE |
-n | COMPONENT |
-f | FLAGS |
启动应用
- 通过
启动页地址
可以打开指定应用
启动页地址中和包名相同部分,可以简写
am start -n com.xxx.xxx/.SplashActivity
am start -n com.xxx.xxx/com.xxx.xxx.SplashActivity
- 过滤
intent
行为打开指定应用
可以用于模拟sheme跳转
am start -a android.intent.action.VIEW -d scheme://host:port/path?param="1" com.xxx,xxx
- 以debug的方式启动
在启动命令后加上-D
am start -D -n com.xxx.xxx/.SplashActivity
- 查看启动时长
在启动命令后加上-S -W
am start -S -W -n com.xxx.xxx/.SplashActivity
结果如下图所示,会展示启动方式、启动时长等信息
发送广播
am broadcast -a 接收者 -e 参数
以小度音响为例:
可以通过广播命令实现小度音响的语音控制
am broadcast -a com.baidu.duer.query -e q 播放爱在西元前
dumpsys 查看系统服务的信息
dumpsys是一种在 Android 设备上运行的工具,可提供有关系统服务的信息。
官方介绍:dumpsys
查看当前apk版本信息
dumpsys package com.xxx.xxx | findstr version
最近用findstr查询会报错:/system/bin/sh: findstr: not found
建议改用grep查询
dumpsys package com.xxx.xxx | grep version
查看当前页面对应的activity
dumpsys window | grep mCurrentFocus
内存分析
dumpsys meminfo
dumpsys meminfo <pid>" //指定进程
dumpsys meminfo --package com.xxx.xxx //指定包名
pm 模拟android行为;查询应用信息
package manager,模拟android行为或者查询设备上的应用信息等。
查看已安装应用
展示设备中已安装应用的包名
pm list packages
清除数据和缓存
pm clear com.xxx.xxx
wm 窗口管理
window manager,查询修改屏幕设置。
屏幕大小
wm size //查看当前设备屏幕大小
wm size 1080x1920 //修改当前屏幕大小为1080x1920,乘号是英文字母x
wm size reset //恢复原本的尺寸
屏幕密度
wm density //查看当前设备屏幕密度
wm density 480 //修改当前屏幕密度为480
wm density reset //恢复原本的密度