adb支持两种连接android系统的方式:
1.USB方式
2.网络方式
一般手机及平板默认会设置为USB方式。
背景知识:
android系统底层运行着一个服务(adbd),用于相应和管理大家在电脑端的adb命令连接,
这个服务在启动时会根据手机的配置监听USB连接或网络其中之一。配置的属性为:
service.adb.tcp.port <- 监听的网络端口
以上属性的值 > 0 : adbd将监听网络对应的端口(一般为5555)
以上属性的值 <=-1 : adbd将监听USB
1.usb方式连接,就不多说,很简单,将设备用usb连接好电脑便可以了。
2.网络连接:
在android里,adb一般使用USB连接,但是很多时候,可能只有一个设备终端,但是需要多于一个用户连接设备调试,因此使用网络连接将是必要的,下面介绍网络连接的方法:
1、设备端
首先查看设备上的进程列表(adb shell --> ps),是不是adbd进程在运行:
981 0 0 SW< [rpciod/0]
1762 0 1996 S /system/busybox/bin/ash
1763 1000 796 S /system/bin/servicemanager
1764 0 824 S /system/bin/vold
1765 0 656 S /system/bin/debuggerd
1766 1001 4396 S /system/bin/rild
1768 1013 18084 S /system/bin/mediaserver
1769 1002 1092 S /system/bin/dbus-daemon --system --nofork
1770 0 784 S /system/bin/installd
1771 1017 1616 S /system/bin/keystore /data/misc/keystore
3798 0 3368 S /sbin/adbd
可以看出adbd已经在运行了,停掉adbd:
stop adbd
然后设置adbd使用的tcp端口:
# setprop service.adb.tcp.port 5555
/ # start adbd
使用netstat -l 查看:
/ # netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:5037 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5555 0.0.0.0:* LISTEN
可见adbd在5555端口已经实现监听;
2、host端:
./adb connect 192.168.1.12:5555
connected to 192.168.1.12:5555
说明已经连接上设备;然后执行:
./adb shell
就可以使用shell调试设备端的程序了