【发布时间】:2010-11-26 06:40:45
【问题描述】:
我可以使用 adb 通过 wifi(使用 tcp/ip)从 Android 手机转储日志吗?可以使用 adb connect,但它需要在手机上运行一些服务器(在 5555 端口)。如何启动此服务器? 或者从手机获取日志的唯一方法是将其连接为 USB 设备?
【问题讨论】:
我可以使用 adb 通过 wifi(使用 tcp/ip)从 Android 手机转储日志吗?可以使用 adb connect,但它需要在手机上运行一些服务器(在 5555 端口)。如何启动此服务器? 或者从手机获取日志的唯一方法是将其连接为 USB 设备?
【问题讨论】:
在您的手机上安装adbWireless。运行应用程序并单击大按钮(你不能错过它!)。它将通过 Wifi 激活 ADB 并显示用于使用 adb 命令连接到它的 URL。
在您的计算机上,运行带有connect 参数的adb 命令。 adb 的用法说:
connect <host>[:<port>] - connect to a device via TCP/IP
Port 5555 is used by default if no port number is specified.
显然电脑和智能手机必须在同一个 Wifi 网络上。
【讨论】:
Android 在网络访问方面非常偏执。如果没有 root 访问权限,您将无法真正运行任何服务器,只能运行客户端。总之,不用root,看100rabh的答案。
如果您有 root 权限,您可以打开网络堆栈以接收端口 5555 上的传入连接,或者您可以破解 adb 来执行反向连接(即连接到您的客户端)。后者更安全,不应该真的很难做到。 (不过,我有一段时间没看代码了。)adb 的所有部分的通信位都在同一个库中处理,用于 adb 的所有三个部分(服务器、守护程序和客户端)。
顺便说一句,您所说的手机上的服务器实际上是 adb 守护进程。
【讨论】: