ADB两个进阶使用

adb通过Wi-Fi连接手机

背景知识

Android系统底层运行着一个服务(adbd),也就是在手机系统内部,用于响应、管理大家在电脑端的adb命令连接,这个服务在启动时候会根据手机的配置监听USB或者网络其中之一。
配置属性为:

  • service.adb.tcp.port<- 监听的网络端口
  • 以上属性的值 > 0 adbd将监听网络对应的端口(一般为5555)
  • 以上属性的值 <=-1 adbd将监听USB

Wi-Fi连接手机具体步骤

ADB连接手机两种方法:USB(直接连接数据线)、Wi-Fi
First:
adb usb ——确认adb运行在USB模式下面。
➜ ~ adb devices
List of devices attached
8472e889 device

➜ ~ adb usb
restarting in USB mode

Second:
adb tcpip —— 重启adb,运行到TCP模式下
➜ ~ adb usb
restarting in USB mode
➜ ~ adb tcpip 5555
restarting in TCP mode port: 5555

Third:
查看Android设备IP
设置-关于手机-状态信息-ip地址
设置-WLAN-点击当前连接上的Wi-Fi查看IP
adb命令查看:adb shell net cfg

Four:
Adb connect连接设备。
➜ ~ adb connect 100.84.197.67
already connected to 100.84.197.67:5555
➜ ~ adb devices
List of devices attached
100.84.197.67:5555 device
8472e889 device

Five:
调试完成后,断开连接:adb disconnect 或者 adb usb
➜ ~ adb disconnect 100.84.197.67
disconnected 100.84.197.67
➜ ~ adb usb
restarting in USB mode
➜ ~

使用场景:
(1)USB状态下跑测试脚本;
(2)远程调试手机

详情参考

adb日志查看

命令:

adb logcat [<option>] ... [<filter-spec>] ...

[options]命令包括如下选项:
-s 设置过滤器,例如指定 '*:s'
-f 输出到文件,默认情况是标准输出。
-r [] Rotate log every kbytes. (16 if unspecified). Requires -f
-n Sets max number of rotated logs to , default 4
-v 设置log的打印格式, 是下面的一种:
brief process tag thread raw time threadtime long

-c 清除所有log并退出
-d 得到所有log并退出 (不阻塞)
-g 得到环形缓冲区的大小并退出
-b 请求不同的环形缓冲区 ('main', 'system', 'radio', 'events',默认为"-b main -b system")
-B 输出log到二进制中。

过滤器的格式是一个这样的串:
[:priority]
其中 表示log的component, tag (或者使用 * 表示所有) , priority 从低到高如下所示:
V Verbose
D Debug
I Info
W Warn
E Error
F Fatal
S Silent

eg: adb logcat -v time D

相关推荐