1、搭建adb环境
根据官方文档介绍 https://developer.android.com/studio/command-line/adb :
Android Debug Bridge(adb)是一个多功能的命令行工具,可让您与设备进行通信。adb命令可以促进各种设备操作,
例如安装和调试应用程序,并且可以访问可用于在设备上运行各种命令的Unix shell。
它是一个客户端 - 服务器程序,包括三个组件:
发送命令的客户端。客户端在您的开发计算机上运行。您可以通过发出adb命令从命令行终端调用客户端。
一个守护程序(adbd),它在设备上运行命令。守护程序在每个设备上作为后台进程运行。
服务器,用于管理客户端和守护程序之间的通信。服务器在开发计算机上作为后台进程运行。
adb包含在Android SDK Platform-Tools包中。您可以使用SDK Manager下载此软件包,
SDK Manager会将其安装在android_sdk/platform-tools/。
先下载 Android Stuido;然后启动Android Stuido,找到 Configure -> SDK Manager ->找到Android Sdk 路径 ->进入该路径->找到 platform-tools文件夹路径。
比如我的: C:\Users\PVer\AppData\Local\Android\Sdk\platform-tools
2、开始adb命令
- 2.1
win10下 搜索 "编辑系统环境变量",进入编辑系统环境变量界面。新建系统变量:变量名=PATH;变量值=platform-tools文件夹路径(C:\Users\PVer\AppData\Local\Android\Sdk\platform-tools)。点击确定即可 (注意:设置完毕如果未生效需要重启电脑) - 2.2
搜索cmd 进入终端窗口,随意输入一个adb命令(比如:adb devices),即可执行。
如果提示"'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件。" 则使用cd命令切换到"platform-tools文件夹路径",再执行即可。
3、常见的adb命令
可见官网文档:https://developer.android.com/studio/command-line/adb
3.1 截屏和录屏
-
截屏:
adb shell /system/bin/screencap -p /sdcard/screenshot.png #保存截图到手机 adb pull /sdcard/screenshot.png F:\huangchang\adb截屏 #复制截图到电脑上 adb shell rm /sdcard/screenshot.png #删除手机上的截图
-
录屏:
adb shell screenrecord --time-limit 10 /sdcard/demo.mp4 #保存录制到手机 (--time-limit 10 为录屏时间) adb pull /sdcard/demo.mp4 F:\huangchang\adb录制 #复制录制到电脑上 adb shell rm /sdcard/demo.mp4 #删除手机上的录制
参考于:https://www.jianshu.com/p/cebb7778df7b
3.2 安装和卸载app
-
安装app:
adb devices #找到对应设备的序列号 adb -s 设备的序列号 install 要安装的apk文件路径
-
卸载app:
adb shell pm list packages #找到要卸载的package id adb -s 设备的序列号 uninstall 要卸载的package id
3.3 抓取某个app的日志
adb shell "logcat | grep com.shoplex.plex" >F:\log.txt
adb shell "logcat | grep com.pandavpn.androidproxy" >F:\log.txt
adb shell "logcat | grep com.pandavpnfree.androidproxy" >F:\log.txt
4、android shell下手动修改分辨率和density(dpi)的方法
覆盖设备显示大小。此命令有助于通过使用大屏幕设备模拟小屏幕分辨率来测试不同屏幕尺寸的应用,反之亦然。
wm size 1080x1920 把分辨率设置为1080P
wm density 320 设置densityDpi为320
wm size reset 恢复分辨率
wm density reset 恢复densityDpi
dumpsys window displays 查看设置
如果上面命令不能使用,可用下面命令试试
am display-size 1080x1920 把分辨率设置为1080P
am display-density 320 设置densityDpi为320
注意:分辨率和density(dpi)结合才能测出最终效果