【问题标题】:adb cannot connect to daemon at tcp:5037adb 无法在 tcp:5037 连接到守护进程
【发布时间】:2017-03-31 01:40:12
【问题描述】:

我的 adb 无法连接设备。 我正在运行adb start-server

    ulucudeMacBook-Pro:~ ulucu$ adb start-server
    * daemon not running. starting it now at tcp:5037 *
    * daemon started successfully *

然后运行“lsof -i tcp:5037

    ulucudeMacBook-Pro:~ ulucu$ lsof -i tcp:5037
    COMMAND  PID  USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
    adb     2308 ulucu    7u  IPv4 0x440443a862048a7b      0t0  TCP localhost:5037 (LISTEN)

但是当我运行adb kill-server

    ulucudeMacBook-Pro:~ ulucu$ adb kill-server
    * server not running *

或运行adb devicesadb shell

    List of devices attached
    * daemon not running. starting it now at tcp:5037 *
    adb E 03-31 09:30:26  2350 95705 usb_osx.cpp:333] Could not open interface: e00002c5
    adb E 03-31 09:30:26  2350 95705 usb_osx.cpp:294] Could not find device interface
    error: could not install *smartsocket* listener: Address already in use
    ADB server didn't ACK
    * failed to start daemon *
    error: cannot connect to daemon

adb 一直在运行。
没有其他进程使用“5037”端口。
没有像“genymotion”这样的其他模拟器。
我的系统是 Mac 10.12.14。
我的 adb 版本是 1.0.39。

有什么问题?

【问题讨论】:

    标签: java android google-maps adb


    【解决方案1】:

    如果您已更新到 Platform Tools 25.0.4(您可以从命令行检查正在运行的 android)并且它不工作

    只需下载以前的稳定版本,例如:https://dl.google.com/android/repository/platform-tools_r25.0.2-macosx.zip

    然后转到您的 Android SDK 主目录并将 platform-tools 文件夹替换为下载的文件夹。

    然后做:

    ps aux | grep 5037
    kill -9 <pid of process of your incorrectly running adb>
    

    走吧

    adb devices
    

    【讨论】:

    • 谢谢。这适用于我在 MacOS 上。永远也想不通。它是在将一些包更新到 25.0.x 版本后发生的。
    • what my sdk manager looks like 显然路径仍然指向 24.4.1_1,而 Android SDK 工具显示 25.0.x(根据 vbevans94 的建议下载的 25.0.2 替换了文件夹)。
    • 谢谢,经过几周的挖掘,这解决了我的问题。
    • 只是,杀死另一个进程对我有用。非常感谢!
    【解决方案2】:
    adb kill-server
    

    如果端口发生错误:

    adb reconnect帮我解决

    【讨论】:

      【解决方案3】:

      根据此thread,您无法连接,因为该地址已在使用中。您可以尝试busybox netstat -antp 来检查谁在使用该端口。这是另一个可能有帮助的解决方法:

      通过首先运行以下命令解决MacBook 上的此问题 列出正在使用端口5037的进程

      lsof -n -i4TCP:5037 | grep LISTEN
      

      然后,我杀了它:

      kill -9 <PID>
      

      然后,adb devices 工作!

      希望这会有所帮助!

      【讨论】:

      • 我正在运行“ lsof -n -i4TCP:5037 | grep LISTEN”
      • show --> adb 6796 ulucu 7u IPv4 0x440443a854b64753 0t0 TCP 127.0.0.1:5037 (LISTEN) ------------adb正在使用5037 ----- --------杀死它,然后“adb devices” ------------同样的错误
      【解决方案4】:

      我在这里尝试了每一个答案,并在这里尝试了其他一些线程。

      • 已删除 ~/.android 文件夹
      • 杀死服务器(这不起作用,因为它仍然说无法确认)
      • greping 进程

      我的 adb 是通过 brew 运行的,所以我只运行了 brew cask reinstall android-platform-tools 并且它再次工作。

      【讨论】:

        【解决方案5】:

        在 Ubuntu 上也有同样的问题。

        nils@nils-MS-7597:~$ adb devices 附加设备列表 * 守护进程没有运行。现在从 tcp:5037 开始 * 错误:无法安装 smartsocket 侦听器:地址已在使用中 ADB 服务器没有 ACK * 无法启动守护进程 * 错误:无法连接到守护进程

        只有 adb 监听 5037 端口。杀死它没有帮助。

        之前更新过 sdk。不知道是不是这个原因。

        但是重新下载android sdk为我解决了:

        下载安卓sdk

        wgethttp://dl.google.com/android/android-sdk_r24.2-linux.tgz

        tar -xvf android-sdk_r24.2-linux.tgz cd android-sdk-linux/工具

        安装所有 sdk 包

        ./android update sdk --no-ui

        【讨论】:

        • 谢谢你的回答。我的系统是MAC OS。问题解决了。原因是最新系统和adb 1.0.39不兼容。我用adb 1.0.36没问题。
        【解决方案6】:

        我不敢相信他们完全删除了独立 sdk,他们强迫您安装导致此问题的最新平台工具,并且您无法从 sdkmanager 降级。真可惜。 无论如何,只需手动将 adb 降级到 1.0.36 版本,它应该可以工作。互联网上有数百个类似的问题。伤心。

        【讨论】:

          【解决方案7】:

          我的问题的解决方案是运行 Android Studio AS ADMINISTRATOR,似乎当我将 Android Studio 更新到 3.5.2 时,状态发生了某种变化,导致了我的问题。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2019-10-05
            • 1970-01-01
            • 1970-01-01
            • 2020-02-17
            • 1970-01-01
            • 1970-01-01
            • 2017-06-14
            • 1970-01-01
            相关资源
            最近更新 更多