gpt4 book ai didi

Android - adb tcpip 错误

转载 作者:太空狗 更新时间:2023-10-29 15:17:45 25 4
gpt4 key购买 nike

我想通过网络使用 adb 连接到 Android 设备。我熟悉How can I connect to Android with ADB over TCP?https://developer.android.com/guide/topics/usb/index.html并遵循指南。具体来说,我做了以下事情:

# adb kill-server
# adb tcpip 5555
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
restarting in TCP mode port: 5555
# adb connect 192.168.1.101:5555
unable to connect to 192.168.1.101:5555:5555

由于上次的错误,我也试过了

# adb connect 192.168.1.101
unable to connect to 192.168.1.101:5555

我也尝试重启设备本身,但没有帮助。它不起作用的任何原因?

更新:为了消除疑虑,我确定这是我的设备内部 IP 地址。

最佳答案

我的没有开启Root的设备也遇到了同样的问题。与流行的看法相反,似乎adb tcpip <port>需要模拟器或调试版本或 root 权限;至少根据源代码。

主分支:https://github.com/android/platform_system_core/blob/master/adb/adb.c#L898should_drop_privileges这可以防止 https://github.com/android/platform_system_core/blob/master/adb/adb.c#L966 adb_main打开 TCP/IP 套接字连接。

在较旧的分支中,用于识别 adbd 权限的逻辑在 adb_main本身。请参阅:https://github.com/android/platform_system_core/blob/froyo-release/adb/adb.c#L860

所以,进一步证明adbd不会进入 TCP/IP 模式(即使 adb tcpip 没有给出任何错误),请查看以下内容:

adb shell getprop | grep 'ro.secure\|debuggable\|qemu' ,我的设备输出:

[ro.secure]: [1]
[ro.debuggable]: [0]

这不符合能够得到secure的条件adbd 中的 0 值,因为我没有运行模拟器(默认情况下需要 TCP/IP),所以我没有运行可调试的 Android 版本,而且我不是 root。

此外,如果您发出 adb shell netstat命令你会看到没有人在端口 5037 或 5555 或你提供给 tcpip 的任何其他端口上监听命令来自adbd在 TCP/IP 模式下运行。

希望这对您有所帮助,祝您好运!

关于Android - adb tcpip 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11074868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com