android调试工具adb

adb 全称 Android Debug Bridge(调试桥)。

一,adb的作用

adb是一个多用途工具,用来管理模拟器或设备。

二,组成结构

adb是C/S模式的程序,它包含三个组件:client,server,deamon。

1,Client是运行在我们自己的电脑上。可以通过adb命令来启动Client。其他的android工具,如ADT插件和DDMS也可以创建client。

2,Server作为后台程序也是运行在我们自己的电脑上。它的作用是负责Client与Deamon之间的通信。

3,Deamon也是作为后太程序运行的,不过是运行在模拟器实例或设备实例。

三,端口问题

1,Server端启动绑定的是本机的5037端口。Client端用5037与服务器端对话。

2,任何Deamon都会取5555到5585之间两个连续的端口,其中奇数端口是负责与adb链接,偶数端口是负责与控制台链接。服务器端通过扫描5555到5585之间的奇数端口来寻找模拟器或设备实例并与找到的建立链接。

四,启动和终止adb服务器

1,adb start-server    启动adb服务器。

2,adb kill-server    终止adb服务器。

3,在linux系统下,有时候会涉及到权限问题而需要以root用户来运行adb服务器。

五,查看模拟器或设备

1,有时候需要确定当前有那些可用的设备或模拟器,可使用命令:adb devices 。

例如:

~$ sudo /opt/android/android-sdk/tools/adb devices

List of devices       attached
emulator-5554      device
HT95LKF00945    device

这里就列出了两个设备,第一个是模拟器,第二个是手机。
注意:这里是用root用户来启动adb服务器和执行adb命令,不然就会出现“no permissions”

2,如果有多个设备在运行的话,发送命令时必须用上-s,-e或-d这几个参数指定目标设备。

 

adb -e  发送命令到模拟器。

adb -d  发送命令到到USB设备,比如手机。

adb -s  指定一个目标。adb -s <serialNumber> <command>install <path-to-apk>

例如:adb -s emulator-5554 install helloWorld.apk

六,执行shell命令

adb  shell  或  adb shell [<shellCommand>]

后者在执行完命令后会退出,两个命令的区别一测试便知了。

七,安装apk程序

adb  install <path-to-apk>

八,上传下载文件

adb  pull <remote> <local>   从设备上下载文件

adb   push <local>  <remote>   上传文件到设备

九,其他功能

help  查看adb所支持的所有命令

version    查看adb的版本序列号

logcat  打印日志到屏幕

bugreport 打印dumpsys,dumpstate和logcat数据到屏幕

jdwp       查看指定的设施的可用的JDWP信息.

forward    forward <local> <remote>

参考这篇文章:http://blog.chinaunix.net/u1/38994/showart_1912868.html

get-serialno 查看adb实例的序列号.

get-state 查看模拟器/设施的当前状态.

ppp 通过use设备运行PPP

wait-for-device  如果设备不联机就不让执行。

 

转自:http://droidke.com/2010/04/01/android-adb.html

你可能感兴趣的:(android,server,shell,服务器,工具,permissions)