【问题标题】:Android Studio error: cannot connect to daemonAndroid Studio 错误:无法连接到守护进程
【发布时间】:2021-11-08 02:02:15
【问题描述】:

我已经使用 AS 几个月了,但是两天后我在尝试运行我的应用时遇到错误:

Unable to run 'adb': null
'C:\Users\lapof\AppData\Local\Android\Sdk\platform-tools\adb.exe start-server' failed -- run manually if necessary
* daemon not running; starting now at tcp:5037
could not read ok from ADB Server
* failed to start daemon
error: cannot connect to daemon

我读过很多人遇到这个问题,但提供的解决方案对我不起作用。我特别阅读了这些问题:

这些问题的很多答案都说要从任务管理器关闭 adb.exe,问题是 adb.exe 没有运行,如果我尝试通过在 PowerShell 窗口上键入 .\adb start-server 重新启动它,我会得到相同的结果错误。

我也尝试重新启动我的电脑,但没有成功。 在我尝试连接的 Android 设备(三星 Galaxy S8)上,我启用了 USB 调试。我什至尝试删除所有授权设备,但没有任何效果。

我检查了 5037 端口是否被其他进程使用,但它被 adb.exe 使用(并且该端口上的防火墙状态是允许且不受限制的)。顺便说一句,正如我所说,在任务管理器中 adb.exe 不存在。

最后我尝试按照我链接的最后一个问题中提供的说明进行操作(基本上我重新下载了 adb.exe)。 最初我跑了.\adb start-server,然后出现了这个奇怪的错误:

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
** daemon still not running
error: cannot connect to daemon

然后当我尝试在 Android Studio 上运行我的应用程序时,它会在尝试启动 adb 时出现这个新错误:

Unable to run 'adb': null
'C:\Users\lapof\AppData\Local\Android\Sdk\platform-tools\adb.exe start-server' failed -- run manually if necessary
ADB server didn't ACK
* failed to start daemon *

然后如果我尝试.\adb kill-server 然后.\adb start-server 或.\adb devices 或.\adb usb 再次发生相同的错误。 此外,当我现在连接我的设备时,它会要求我授权我的电脑进行连接。

我不知道这是否有帮助,但最近我停用了很多 Windows 服务(但我认为我没有停用与 Android Studio 相关的东西)。


详情

  • PC:康柏
  • PC 操作系统:Windows 10 家庭版
  • 设备:三星 Galaxy S8 (Exynos)
  • 设备操作系统:Android 8.0
  • AS 版本:3.0.1

【问题讨论】:

  • 你授权USB调试了吗??
  • @MartinZeitler 是的
  • 我怀疑它已经运行了,可能是因为安装了 Genemotion stop-server & start-server 普通帮助;还要确保没有本地防火墙阻止默认端口tcp:5555。
  • Start > All Programs > Accessories > System Tools > Resource Monitor > Network > Listening Ports 可用于查看端口是否已被任何其他应用程序使用。
  • @MartinZeitler 我不使用 Genymotion(我的旧电脑不支持模拟器 :( )。为什么端口 5555 很重要?不是 adb 使用 5037 吗?

标签: android android-studio adb


【解决方案1】:

对我有用的解决方案 -

以管理员身份打开命令提示符并输入

adb start-server

就是这样

【讨论】:

  • 我们应该在这之后重新启动 AS 吗?
【解决方案2】:

我刚才遇到了同样的问题。我解决了:

以管理员身份运行CMD

在 CMD 中输入adb devices。

我的输出是:

C:\WINDOWS\system32>adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
P9BCS87ABS9SCD5 device

【讨论】:

  • 'adb' 不是内部或外部命令、可运行程序或批处理文件。如何处理这个
  • @KusumakarPant 要么将 adb 添加到路径中,要么使用完整路径
  • 谢谢,这解决了它,请注意,一旦启动守护进程,即使在非管理控制台上它也可以工作
  • 这是一个有趣的技巧;)我的是版本不匹配错误。它在这个命令之后杀死并启动
  • 我在运行上面的命令时遇到了这个错误,你能帮忙吗? * 守护进程未运行;从现在开始 tcp:5037 无法从 ADB 服务器读取 ok * 无法启动守护进程 adb.exe:无法检查服务器版本:无法连接到守护进程
【解决方案3】:

我自己解决了这个问题。

出于沮丧,我打开了Control Panel > System and security > Windows defender firewall > Allowed applications,并添加了 adb.exe(私有网络和公共网络)。

我回到 Android Studio,运行应用程序,神奇地成功初始化了 ADB,我通过 USB 连接的手机就在那里。

我真的不知道为什么会这样,因为当我签入Start > All Programs > Accessories > System Tools > Resource Monitor > Network > Listening Port 时,它说在端口 5037 上允许防火墙。

此外,我不知道为什么一周前一切正常,而现在我必须执行此过程才能使其正常工作。

如果更有经验的人设法更好地解释这种行为,我会更新这个答案(或接受他作为最佳答案)

【讨论】:

    【解决方案4】:

    以管理员身份运行 CMD 或 PowerShell

    然后运行以下命令:

    net stop winnat
    

    在正确的文件夹中运行:

    adb start-server
    
    net stop winnat
    

    【讨论】:

      【解决方案5】:

      我的情况 最新的平台是版本 30.0.3。我也有同样的问题:

      * daemon not running. starting it now on port 5037 *
      * daemon started successfully * 
      

      我的解决方案:

      【讨论】:

        【解决方案6】:
        1. SDK 管理器 -> SDK 工具
        2. 取消选中“Android SDK 平台 - 工具”
        3. 点击应用

        【讨论】:

        • 这只是为我删除了 adb。这不是要遵循的解决方案。重新安装后,连接确实有效。
        • 谢谢,这是唯一对我有用的解决方案(重新安装后)
        【解决方案7】:

        以下解决方案解决了我的问题:

        1. 转到您的任务管理器
        2. 查看adb 是否正在运行
        3. 右键单击并结束任务
        4. 转到命令提示符
        5. 运行adb devices

        它会正常工作

        【讨论】:

          【解决方案8】:

          在使用 Android Studio 和 Emulator 没有任何问题后,突然停止连接到 Emulator,甚至 adb 服务器正在运行(杀死和启动),为所有程序(adb.exe,qemu-system-x86_64. exe、studio64.exe 等),释放 5037 端口,卸载并重新安装程序,甚至从头开始安装整个 Android Studio。我的一切运行正常,但 AS 和 Emulator 之间没有连接。

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

          【讨论】:

          • 一年多前我遇到这个问题的时候,还没试过这个!可能是一个非常好的解决方案。幸运的是它没有再发生在我身上。
          【解决方案9】:

          在所有 adb 未解决的情况下对我有用的方法:

          adb kill-server
          

          或

          adb disconnect
          

          我会两个都试一下,一个就可以了。

          【讨论】:

            【解决方案10】:

            我多次遇到这个问题。看来如果系统启动时,通过USB线连接设备,守护进程将正确连接,不会出现问题。当然我想要一个更好的解决方案,因为我每次都很难关闭并重新启动。

            【讨论】:

              【解决方案11】:

              一般是WinNAT服务引起的,重启解决问题。

              只需以管理员身份打开命令提示符,然后在此处键入以下命令:

              net stop winnat
              net start winnat
              

              【讨论】:

                【解决方案12】:

                升级到 Android Studio Bumblebee 后遇到同样的问题 | 2021.1.1

                要解决它,请转到设置 -> 构建、执行、部署 -> 调试器

                然后取消选中选项为无线调试器启用 adb mDNS

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 2017-02-16
                  • 1970-01-01
                  • 1970-01-01
                  • 2017-05-15
                  • 1970-01-01
                  • 2017-06-14
                  • 1970-01-01
                  相关资源
                  最近更新 更多