Android Debug bridge
2011-11-19 11:55
204 查看
ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备。
Server端启动绑定的是本机的5037端口。Client端用5037与服务器端对话。任何Deamon都会取5555到5585之间两个连续的端口,其中奇数端口是负责与adb链接,偶数端口是负责与控制台链接。服务器端通过扫描5555到5585之间的奇数端口来寻找模拟器或设备实例并与找到的建立链接。
一旦服务器与所有模拟器或设备建立连接,就可以用adb命令控制和访问这些实例。因为服务器管理模拟器/设备实例的连接,和控制处理从多个dbc 客户端的的命令,你可以从任意一个客户端(或脚本)控制任何模拟器/设备实例。以下部分描述通过命令使用adb和管理模拟器/设备的状态。要注意的是如果你用装有ADT插件的Eclipse来开发Android应用程序,那么你不需要通过命令行方式使用adb。ADT插件已经透明的把adb集成到Eclipse IDE中。当然,如果必要的话,你仍然可以直接使用adb命令,比如调试。
三个组件
客户端(Client):运行在我们的开发电脑上,可以通过adb命令来启动Client,其他的android工具,如ADT插件和DDMS也可以创建Client。服务器(Server):作为后台程序运行在我们的开发电脑上,它的作用是负责Client与模拟器或手机设备上adb 守护进程(Deamon)之间的通信。守护进程(Deamon):在模拟器或手机设备后台运行的ADB进程。
主要功能
快速更新设备或手机模拟器中的代码,如应用或Android系统升级;在设备上运行shell命令;管理设备或手机模拟器上的预定端口;在设备或手机模拟器上上传下载文件
运行原理
启动过程如下图:![](http://pic002.cnblogs.com/images/2012/384764/2012031415142848.jpg)
![](http://pic002.cnblogs.com/images/2012/384764/2012031415144787.jpg)
发出ADB命令
你可以在你的开发机的命令行或脚本中使用adb命令:$adb [-d|-e|-s ]当你输入命令后,adb 客户端被启动,客户端并不与模拟器/设备实例相关,所以如果有多个模块器/设备在运行,你需要使用-d选项去识别命令执行的目标实例。
ADB命令
Options: -d:仅仅通过USB接口来管理abd. -e:仅仅通过模拟器实例来管理adb. -s:通过模拟器/设备的允许的命令号码来发送命令来管理adb General: devices:查看所有连接模拟器/设备的设施的清单. version:查看adb的版本序列号 logcat[] []:将日志数据输出到屏幕上 bugreport:查看bug报告,如dumpsys,dumpstate和logcat信息。 push:将本地文件拷贝到模拟器/设备上 pull:从模拟器/设备上拷贝文件到本地 install:将本地apk包拷贝到模拟器/设备上并安装 shell:登陆设备,可执行shell命令 scripting: adb wait-for-device - 阻塞adb server直接设备可用 adb start-server - 启动 adb server adb kill-server - 关闭 adb server adb get-state - 打印信息: offline | bootloader | device adb get-serialno - 打印信息: adb status-window - 不断地打印指定设备的状态信息 adb remount - 在可读写设备上重新挂载/system分区 adb reboot [bootloader|recovery] - 重新启动设备,选择性地进入bootloader或recovery模式 adb root - 用root权限重新adb More adb info: adb help参考资料:http://developer.android.com/guide/developing/tools/adb.html
相关文章推荐
- ADB(Android debug bridge)
- 老李推荐:第8章3节《MonkeyRunner源码剖析》MonkeyRunner启动运行过程-启动AndroidDebugBridge 3
- Using Android Debug Bridge (ADB) via TCP/IP
- Android Debug Bridge
- Android Debug Bridge (adb) device - no permissions
- 老李推荐: 第8章4节《MonkeyRunner源码剖析》MonkeyRunner启动运行过程-启动AndroidDebugBridge 2
- Get Android stack trace from device using Debug Bridge
- VS android应用启动调试Could not locate the Android Debug Bridge (adb.exe)
- Android Debug Bridge(ADB)的配置
- [ZZ]Android Debug Bridge
- Android Debug Bridge(ADB) 技术实现(译)(转)
- adb端口被占用,描述为android debug bridge的adb.exe无法结束
- android studio启动时报错:Unable to create Debug Bridge
- Android Debug Bridge 技术实现原理
- Using Android Debug Bridge (ADB) via TCP/IP
- Android Debug Bridge命令介绍
- Android Debug Bridge(ADB)的用法
- Using Android Debug Bridge (ADB) over Wifi
- Android debug bridge command line-adb shell tips -logcat/am/pm/dumpsys
- Android Debug Bridge (adb)