DB的概念
adb的全称为Android Debug Bridge,是起到调试桥的作用。通过adb,我们可以在ecplise中方便的通过DDMS来调试Android程序,其实他就是一个debug工具。但它的工作当时比较特殊,采用监听socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行ecplise的时候adb的进程就会自动运行
ADB的作用
借助adb工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,比如安装软件、系统升级、运行shell命令等等。
ADB的特点
1).运行设备的shell(命令行)
2).管理模拟器或设备的端口映射
3).计算机和设备之间上传/下载文件
4).将apk软件安装至模拟器或android设备
5).ADB是一个 客户端-服务器端 程序, 其中客户端是你用来操作的电脑, 服务器端是android设备.
ADB操作命令
1. 查看在线设备
adb devices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示
其中标红的表示设备的状态,其有三个状态:
Devices:这个状态表示设备或者模拟器已经连接到adb服务器上。
Offline:这个状态表明设备或者模拟器没有连接adb服务去或者没有响应。
No devices:这个状态表示没有物理设备或者模拟器连接。
2.连接设备
adb connect *****
这个命令是连接某个设备,如使用安卓模拟器,输入
adb connect 127.0.0.1:62001
3.安装软件
adb install
adb install <apk文件路径> :这个命令将指定的apk文件安装到设备上。
adb –s <设备序列号> install :-s 是跟设备的序列号。
adb –s <设备序列号> install -r :强制安装。
4.卸载软件
adb uninstall <包名>
adb uninstall -k <包名>
如果加 -k 参数,为卸载软件但是保留配置和缓存文件.
5.进入设备或模拟器的shell:
通过上面的命令,就可以进入设备或模拟器的shell环境中,在这个Linux Shell中,你可以执行各种Linux的命令,另外如果只想执行一条shell命令,可以采用以下的方式:
adb shell [command]
如:adb shell dmesg 会打印出内核的调试信息。
6. 发布端口
可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:
adb forward tcp:5555 tcp:8000
7.从电脑上发送文件到设备
adb push <本地路径> <远程路径>
如:
adb push D:/apk/com.tencent.news.apk /sdcard/com.tencent.news.apk
用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)
从设备上下载文件到电脑
adb pull <远程路径> <本地路径>
如:
adb pull /sdcard/com.tencent.news.apk D:/apk/push/com.tencent.news.apk
用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑
8.使用Logcat命令输出日志
adb logcat 将手机日志导出并显示
adb logcat –c 清除手机缓存日志