首页 > 代码库 > adb工具

adb工具

ADB全称是Android Debug Bridge,是android sdk里的用来直接操作管理android模拟器或者真实的android设备的工具,adb本质上是一个“CS”程序,其中client是用来操作的电脑,server是android设备。主要功能有:

运行设备的shell(命令行);

管理模拟器或者设备的端口映射;

计算机和设备之间上传下载文件;

将本地apk安装至设备上。

 

ADB常用的命令详解

adb devices
查看挡墙连接的设备,该命令返回连接至开发机的android设备序列号及状态。如:

emulator-5554 offline

emulator-5556 device该状态并不表示android设备可用,当android设备处于启动阶段时,若连接成功也会返回该状态

adb首先会启动server,该server使用5037端口进行监听,并尝试使用5555~5585端口连接android设备,也可以人为地改变通信端口:

adb forward <local port> <device port>

eg:adb forward tcp:5555 tcp:8888

当多台设备连接至同一开发机时,需要使用-s区分序列号,如:

 

adb -s emulator-5556 install helloworld.apk

这是安装apk文件的命令,若想重新安装。可以用

adb install -r helloworld.apk

 

adb uninstall <apk_name>

卸载apk文件

adb uninstall –k <apk_name>

卸载apk文件,但是保留配置和缓存文件

 

adb shell

进入设备的shell环境中,这是一个Linux Shell环境,可以执行各种Linux命令,如果只想执行一条shell命令,可以采用以下的方式

adb shell <command>

在shell下可查看手机系统的具体命令

getprop:查看设备全部信息参数,从硬件信息到ROM版本信息。

getprop ro.serialno:查看设备的SN号

……

ls:列出当前目录下的文件

adb shell bugreport

将从开机到此时所有log日志都输出出来

 

adb push <local path> <device path>

从主机push文件到设备路径中,如:

adb push c:\adb\helloworld.apk /sdcard/

此处需要注意的是,主机上的路径是“C:\”,手机上的是“/sdcard/”,两处斜杠方向不同。

 

adb pull < device path > < local path >

从设备某一路径下把文件拉到主机某路径

 

adb logcat > <local path file>

把logcat写进本地某一路径的文件中

 

adb logcat –s tag_name

直接在命令窗口查看log信息

 

adb bugreport

查看bug报告

 

adb start-server

adb kill-server

这两句是启动adb或杀死adb服务,某些时候eclipse调试会报adb is down等adb错误,这时候一般就在android SDK 的platform-tools的路径下先kill一下,再start一下就好了;若不行,就打开任务管理器,关闭adb进程,再打开这个进程;看看是否安装了360安全卫士,里面也有一个adb.exe,占用了端口,所以本地eclipse的启动不了,把360安全卫士关了,再启动就好了。

adb工具