赞
踩
ADB即 Android Debug Bridge 是一种允许模拟器或已连接的 Android 设备进行通信的命令行工具,ADB 是 Android SDK 里的一个工具, 用这个工具可以直接操作管理Android模拟器或者真实的Android设备。
1.ADB下载地址:https://developer.android.com/studio/releases/platform-tools
2.将下载的SDK文件解压到目录中(自己选择存放位置)
3.配置环境变量。将 Android SDK 的 platform-tools 目录添加到系统环境变量中,以便在任意位置使用 ADB 命令,如果不配置每次只能进入到platform-tools 目录中才能使用ADB命令。
以windows为例:打开系统的环境变量设置,将SDK的platform-tools目录添加到系统的PATH变量中:
ADB命令基本语法:adb [-d|-e|-s <serial-number>] <command>
大致可以分为三部分,首先adb是固定的,如果只有一个设备/模拟器连接时 [-d|-e|-s <serial-number>] 可以省略,<command>代表具体的指令。
以下是关于 [-d|-e|-s <serial-number>]部分的一些详解:
参数 | 含义 |
-d | 指定当前唯一通过 USB 连接的 Android 设备为命令目标 |
-e | 指定当前唯一运行的模拟器为命令目标 |
-s | <serial-number> 指定相应设备序列号的设备/模拟器为命令目标 |
查看adb的版本信息
adb version
启动adb
adb start-server
一般无需手动执行此命令,在运行 adb 命令时若发现 adb server 没有启动会自动调起。
停止adb
adb kill-server
查询已连接的设备/模拟器列表
adb devices
查看应用
adb shell pm list packages 展示的是所有的应用包名,如果觉得太多不好查看,还可以加使用-s、-3或加上一些字符串来过滤:
adb shell pm list packages -s 表示查看系统的应用
adb shell pm list packages -3 表示查看第三方应用包名
adb shell pm list packages earth 表示查看含有earth的应用包名(earth可替换成自己想查看的包名)
安装应用(apk格式)
adb install <apk-file>
<apk-file>表示要安装的apk文件路径,例如:
卸载应用
adb uninstall <package-name>
例如:adb uninstall com.earth.bdspace表示卸载包名为com.earth.bdspace的应用
清除应用数据与缓存
adb shell pm clear <package-name>
例如:adb shell pm clear com.earth.bdspace 表示清除包名为com.earth.bdspace应用的数据与缓存
查看应用安装路径
adb shell pm path <package-name>
例如:adb shell pm path com.earth.bdspace 表示查看包名为com.earth.bdspace应用的安装路径
从设备下载指定文件到电脑
adb pull <remote local>
例如:C:\Users\Z>adb pull sdcard/images/demo.jpg 表示把安卓手机中的这张demo图片上传到电脑的C:\Users\Z路径下(C:\Users\Z不是命令,代表的是命令提示符窗口中当前命令执行的位置)
也可以在后面加上电脑路径,来指定上传到电脑的位置:adb pull sdcard/images/demo.jpg D:\xiazai 表示上传到D盘的xiazai文件夹下
从电脑下载指定文件到设备
adb push <local remote>
例如:C:\Users\Z>adb push D:\ADB.png /sdcard/Kml 表示把电脑D盘路径下的这个ADB图片下载到安卓手机的Kml文件夹下(C:\Users\Z不是命令,代表的是命令提示符窗口中当前命令执行的位置)
截图
adb exec-out screencap -p > 图片名称.图片格式(jpg/png)
例如:C:\Users\Z>adb exec-out screencap -p > 1.jpg (C:\Users\Z不是命令,代表的是命令提示符窗口中当前命令执行的位置)
如果adb版本较老,无法使用exec-out命令,要稍微麻烦点分步骤先把截图保存到设备:adb shell screencap -p /sdcard/sc.png,再结合adb pull命令把图片文件拉到电脑:adb pull /sdcard/sc.png
录频
adb shell screenrecord /sdcard/1.mp4
注解:1.mp4是名称,可自己命名但是视频格式要对。
2.ctrl+c可提前结束录制,默认录制时长180s
3.输入 --time-limit N,限制视频录制时间为N秒:adb shell screencord --time-limit 30 /sdcard/1.mp4 表示限制录制时间30s。
4. 指定视频分辨率大小:adb shell screenrecord --size 1280*720 /sdcard/demo.mp4
如需导入到电脑,再使用adb pull命令把视频文件导入到电脑:adb pull /screenrecord /sdcard/1.mp4。
向设备输入信息
adb shell input text
例如:adb shell input text 1\% 表示向设备文本框中输入1%。输入特殊字符时需要在特殊字符前加上“\”,不能输入中文。
查看设备分辨率
adb shell wm size
修改设备分辨率:adb shell wm size 1080x2340 表示修改手机分辨率为1080x2340
恢复原来设备分辨率:adb shell wm size reset
获取设备应用的安装包到电脑
1.获取包名(已经知道包名跳至步骤2):
(1)输入:adb shell am monitor
(2)点击启动需要获取包名的应用,窗口就会打印出来当前应用的包名
2.找到包的路径:
命令:adb shell pm path <packages-name>
例如:adb shell pm path com.tencent.mobileqq 表示查看设备中QQ的安装包路径
3.结合adb pull拉取手机安装包到电脑:
命令:adb pull <粘贴步骤2中显示的路径>
WLAN连接设备(需要USB线)
1.将 Android 设备与要运行 adb 的电脑连接到同一个 WiFi。
2.将设备与电脑通过 USB 线连接(可通过 adb devices 命令查看设备连接情况)。
3.通过 adb tcpip 5555 命令让设备在 5555 端口监听 TCP/IP 连接。
4.断开 USB 连接。
5.找到设备的 IP 地址(可以在「设置」-「关于手机」-「状态信息」-「IP地址」查看 IP 地址)。
6.通过 adb connect <device-ip-address> 命令使用 IP 地址将 Android 设备与电脑连接。
7.通过 adb devices 命令查看设备连接情况,使用完毕后可通过 adb disconnect <device-ip-address> 命令断开无线连接。
查看设备 Android 系统版本
adb shell getprop ro.build.version.release
查看此刻手机上正在运行的包名和启动页Activity
adb shell dumpsys window w |findstr \/ |findstr name=
修改状态栏和导航栏的显示隐藏
adb shell settings put global policy_control <key-values>
<key-values> 可由如下几种键及其对应的值组成,格式为 <key1>=<value1>:<key2>=<value2>。
key | 含义 |
immersive.full | 同事隐藏状态栏和导航栏 |
immersive.status | 隐藏状态栏 |
immersive.navigation | 隐藏导航栏 |
这些键对应的值可由如下值用逗号组合:
value | 含义 |
apps | 所有应用 |
* | 所有界面 |
package-name | 指定应用 |
-package-name | 排除指定应用 |
例如:adb shell settings put global policy_control immersive.full=* 表示设置在所有界面下都同时隐藏状态栏和导航栏;
adb shell settings put global policy_control immersive.status=com.package1,com.package2 : immersive.navigation=apps,-com.package3 表示设置包名为 com.package1 和 com.package2 的应用里隐藏状态栏,在除了包名为 com.package3 的所有应用里隐藏导航栏。
模拟按键
adb shell input keyevent <keycode>
替换不同的<keycode>能实现不同的功能,以下是一些keycode的值及其含义:
keycode | 含义 |
3 | HOME键 |
4 | 返回键 |
24 | 增加音量 |
25 | 降低音量 |
26 | 电源键 |
27 | 拍照 |
64 | 打开浏览器 |
82 | 菜单键 |
122 | 移动光标到行首或列表顶部 |
123 | 移动光标到行末或列表底部 |
176 | 打开系统设置 |
187 | 切换应用 |
223 | 系统休眠 |
224 | 点亮屏幕 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。