Android Debug Bridge
本文以MAC OS为例
ADB版本
$ ./adb version
如果出现
$ ./adb version
-bash: ./adb: No such file or directory
说明你还没有配置环境变量
你可以来到ADB
的目录下再执行命令,目录在
$ cd Library/Android/sdk/platform-tools/
也可以自行google配置一下环境变量
这样就可以在任意目录使用ADB
指令
终端开启Debug模式
在设置中找到开发者选项,并开启debug模式
开发者选项
默认是隐藏状态,如何开启自行google
查看设备
$ ./adb devices
List of devices attached
4f0a34ac device
5F6F7108 device
前面是序列号,后面是设备状态
状态 | 说明 |
---|---|
device | 实例现在已连接到 adb 服务器。请注意,此状态并不表示 Android 系统已完全启动且可以运行,因为在此实例连接到 adb 时系统仍在启动。不过,在启动后,这将是模拟器/设备实例的正常运行状态。 |
offline | 实例未连接到 adb 或不响应。 |
no device | 未连接模拟器/设备。 |
发送指令到指定终端
$ ./adb -s 序列号 指令
参数 | 说明 | 注释 |
---|---|---|
-s 序列号 | 将 adb 命令发送至以其 adb 分配的序列号命名的特定模拟器/设备实例(如“emulator-5556”)。 | |
-d | 将 adb 命令发送至唯一连接的 USB 设备。 | 如果连接了多个 USB 设备,将返回错误。 |
-e | 将 adb 命令发送至唯一运行的模拟器实例。 | 如果有多个模拟器实例在运行,将返回错误。 |
安装应用
多个设备
$ ./adb -s 序列号 install xxx/xxx/xxx.apk
单个真机设备
$ ./adb -d install xxx/xxx/xxx.apk
单个模拟器
$ ./adb -e install xxx/xxx/xxx.apk
从PC端复制文件到终端
$ ./adb pull `终端文件绝对路径` `PC端文件绝对路径`
e.g.:将手机SD下的demo.mp4
文件拷贝到桌面
$ ./adb -d pull /sdcard/demo.mp4 /Users/kongqingwei/Desktop
[100%] /sdcard/demo.mp4
从终端复制文件到PC端
$ ./adb -d push `PC端文件绝对路径` `终端文件绝对路径`
e.g.:将桌面的图片拷贝到终端SD卡
$ ./adb -d push /Users/kongqingwei/Desktop/ic_launcher.png /sdcard/ic_launcher.png
[100%] /sdcard/ic_launcher.png
关闭ADB
终止 adb 服务器进程。
当adb无响应的时候可以关闭adb再重启,得以解决问题。
$ ./adb kill-server
启动ADB
检查 adb 服务器进程是否在运行,如果未运行则启动它。
$ ./adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
进入终端shell
$ ./adb [-d|-e|-s `序列号`] shell `shell指令`
或
$ ./adb [-d|-e|-s `序列号`] shell
e.g.
$ ./adb -d shell ls
acct
bin
cache
config
d
data
default.prop
……
或
$ ./adb -d shell
shell@mocha:/ $
退出终端shell
shell@mocha:/ $ exit
打印Logcat
$ ./adb logcat [<option>] ... [<filter-spec>] ...
或
$ ./adb shell [<option>] ... [<filter-spec>] ...
$ logcat
截屏
截屏保存到/sdcard/screen.png
$ ./adb -d shell screencap /sdcard/screen.png
录屏
按 Control + C 停止屏幕录制,否则,到三分钟或 –time-limit 设置的时间限制时,录制将自动停止。
$ ./adb -d shell screenrecord /sdcard/demo.mp4
^C
参数 | 说明 |
---|---|
–help | 显示命令语法和选项 |
–size widthxheight | 设置视频大小:1280x720。默认值是设备的原生显示分辨率(如果支持),如果不支持,则使用 1280x720。为实现最佳结果,请使用设备的 Advanced Video Coding (AVC) 编码器支持的大小。 |
–bit-rate rate | 设置视频的视频比特率(以兆比特每秒为单位)。默认值为 4Mbps。您可以增加比特率以提升视频质量,但这么做会导致影片文件变得更大。以下示例将录制比特率设为6Mbps:screenrecord --bit-rate 6000000 /sdcard/demo.mp4 |
–time-limit time | 设置最大录制时长(以秒为单位)。默认值和最大值均为 180(3 分钟)。 |
–rotate | 将输出旋转 90 度。此功能是实验性的。 |
–verbose | 显示命令行屏幕上的日志信息。如果您不设置此选项,则运行时此实用程序不会显示任何信息。 |