需要澄清 android 调试器通过网络连接协议的流程

需要澄清 android 调试器通过网络连接协议的流程

我们在 qemu 类型的虚拟平台上启动了 Android 7.1。我们正在尝试通过网络连接 ADB 调试器。该平台使用 slirp 进行虚拟平台与主机之间的通信。我们已将虚拟平台上运行的 Android 上的端口 5585 绑定到主机上的端口 15585。

一旦 Android 启动,使用 Android 设备上的终端,我们将 adb 端口设置为 5585,如下所示,$ stop adbd $ setprop service.adb.tcp.port 5585 $ start adbd

我们正在使用另一台运行 Android SDK 的机器。我们在 Android 机器上发出以下命令:adb tcpip 15585 adb connect :15585

当我们分析在托管 Android 的虚拟平台上捕获的数据包时,我们发现我们在端口 5585 上收到了 ADB 连接请求,但 Android 上的堆栈无法与连接请求进行通信。从 Android 平台,我们看到 ARP 请求正在发出以解析发起连接请求的机器的 IP 地址,但没有得到任何响应。

我的问题是,Android 守护进程是否会在未收到 ARP 请求响应之前不响应?或者守护进程是否可以在 ARP 请求未收到响应的情况下仍响应连接请求?

相关内容