adb-Android debug bridge(安卓调试桥)

ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机).

它的主要功能有:

运行设备的shell(命令行)
管理模拟器或设备的端口映射
计算机和设备之间上传/下载文件
将本地apk软件安装至模拟器或android设备


ADB是一个 客户端-服务器端 程序, 其中客户端是你用来操作的电脑, 服务器端是android设备.

先说安装方法, 电脑上需要安装客户端. 客户端包含在sdk里. 设备上不需要安装, 只需要在手机上打开选项settings-applications-development-USB debugging.

对于Mac和Linux用户, 下载好的sdk解压后, 可以放~或者任意目录. 然后修改~/.bash_profile文件, 设置运行环境指向sdk的tools目录.具体是打开~/.bash_profile文件(如果没有此文件也可以自行添加), 在里面加入一行:

export PATH=${PATH}:<你的sdk目录>/tools

例如: 

然后就可以使用adb命令了.

嫌安装麻烦的同学其实也可以省去上面安装步骤, 直接输入完整路径来使用命令。 

 现在说下ADB常用的几个命令
1. 查看设备

adb devices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示

2. 安装软件

adb install
这个命令将指定的apk文件安装到设备上

adb -s可以指定仿真器序号,用来选择操纵哪一个仿真器,例如adb -s emulator-5554 install email.apk,指定将email.apk安装在仿真器emulator-5554。

3. 卸载软件

adb uninstall <软件名>
adb uninstall -k <软件名>    注意使用包名,例如com.zhang.Android.HelloWorld

如果加 -k 参数,为卸载软件但是保留配置和缓存文件.

你可以从开发环境上传和安装应用程序 apk套件到实际硬设备或 Android仿真器上,执行上面“adb install”命令,后面接 apk文件路径名称。 执行上面“adb uninstall”命令,后面接 package名称,可以移除应用程序 apk套件。注意安装是接 apk文件路径名称(adb install helloWorld.apk),而移除是接 package名称(adb uninstall com.example.android.helloWorld)。详细 package名称可以从 Android操作系统的“/data/data”目录或“ /data/app”目录(要先用“ adb shell”命令进入 Android操作系统)

 

4. 登录设备shell

adb shell
adb shell
这个命令将登录设备的shell.进入 Android操作系统命令行模式后,要离开回到控制台窗口,你可以使用 CTRL+D或 “exit”命令。

后面加将是直接运行设备命令, 相当于执行远程命令

5. 在设备与电脑之间进行文件传送

adb push <本地路径> <远程路径>   用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机) 

adb pull <远程路径> <本地路径>      用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑

“adb push”命令可以上传文件到 SD存储卡目录“/sdcard”,因为 Android操作系统会保护系统文件,其他目录会有存取的权限,是无法自由写入的,所以一般用户文件或照片文件都放在“/sdcard”目录内。“adb pull”命令是相反方向操作,将文件自 Android操作系统的“/sdcard”目录下载到个人计算机上。另外一种常用的做法是从“/data/data”目录或“ /data/app”目录将应用程序 apk套件抽出来,提供开发好的应用程序给其他人使用。

6. 显示帮助信息

adb help
这个命令将显示帮助信息

7.

$ adb logcat                            (监控仿真器运作记录)
adb logcat会实时监控Android仿真器运行时所生成的记录,此项功能对于程序开发人员用来除错帮助很大,开发人员可以从记录中得到应用程序运行时发生的错误消息。运行adb logcat后,若要离开监
控模式,可以按Ctrl+C。

8.

$ adb bugreport                     (生成adb除错报告)
开发人员若要进一步得知系统生成的所有错误消息报告,可以运行adb bugreport指令来实现,该指令会将Android系统的dumpsys、dumpstate与logcat信息都显示出来。

9.
$ adb get-state                     (获得adb服务器运作状态) adb get-state会显示adb服务器的运作状态为何,共有offline (脱机)、bootloader (开机中)、与device (运作中) 三种状态。

10.
$ adb start-server                      (启动adb服务器)  $ adb kill-server                       (关掉adb服务器) 通常启动Android服务器时,就会启动adb服务器了。可以使用adb get-

state来查知adb的状态。如果没有启动可以运行adb start-server启动它,若不想进行除错监控,可以运行adb kill-server关掉它 


  adb指令参数表

用    途 指    令 功 能 描 述
 
参数
 adb -d
 当Android手机用USB连接计算机时,

可通过adb -d对该装置下命令
 
adb -e
 对正在运行的仿真器下指令
 
adb -s
 指定仿真器序号
 
一般用途
 adb devices
 显示当前启动的仿真器装置序号
 
adb help
 显示adb指令用法
 
adb version
 显示adb版本
 
信息处理
 adb install
 安装APK应用程序组件
 
adb push
 上传文件或目录
 
adb pull
 下载文件或目录
 
指令列
 adb shell
 进入Android系统命令列模式
 
除错
 adb logcat
 监控仿真器运作记录
 
adb bugreport
 生成adb除错报告
 
服务器
 adb start-server
 启动adb服务器
 
adb kill-server
 关闭adb服务器
 
adb get-state
 取得adb服务器运作状态
 
adb get-serialno
 获得仿真器运行序号
 
网络
 adb forward tcp:port
 更改仿真器的网络TCP通信端口

adb install -s xxx.apk   安装程序至sd卡

adb install -r xxx.apk  重新安装程序

adb uninstall -k xxx.apk 保存数据和缓存路径

运行eclipse出现如下错误

emulator: ERROR: Could not create temporary hardware.ini: Permission denied

解决方法:先运行模拟器,emulator,再在eclipse下运行程序,选择相应的模拟器或设备即可。

你可能感兴趣的:(adb相关)