繁体   English   中英

亚行将无法启动

[英]Adb won't start

运行Vista,尝试以shell身份以admin get守护程序启动adb而不是立即启动

ADB server didn't ACK
* failed to start daemon *

有什么帮助吗?

这个问题困扰了我很长时间。 除了上述答案之外,请使用以下提示:

  • 使用以下命令创建一个bat文件并运行它。 这个蝙蝠文件将解决您的大多数adb问题。

tskill adb

cd \\工具\\

亚行杀害服务器

亚行启动服务器

ddms

  • 使用命令netstat监视连接状态(adb使用5037)

  • 如果bat文件不起作用,请尝试:断开连接-重新引导电话连接。 (提示:如果adb根本没有响应,请使用“ adb reboot”,如果没有,则使用老式方法)

  • 有时Windows可能很有趣。 重新启动机器。

  • 打开USB调试模式

    • 下载Android SDK并解压缩
    • 从设备管理器中卸载所有“ Android *”
    • 从控制面板中执行“添加硬件”,选择“安装硬件...(高级)”
    • 选择“ Android USB设备”,然后单击“下一步”
    • 单击“从磁盘安装”,然后输入解压缩SDK的路径。
  • 还是行不通 ? 恢复手机出厂设置。

  • MTP检测会延迟ADB。 有时,如果需要启动时间日志,则可能必须在设备管理器(Windows)中禁用MTP驱动程序


当您收到错误消息时, 这是 adb 的绝妙补丁

Adb连接错误:现有的连接被远程“

我无法使用adb。 我在命令行和Eclipse中都遇到了以下错误。

* daemon not running. starting it now on port 5037 *
ADB server didn't ACK<br>
* failed to start daemon *

也就是说,即使重新启动后, adb start-server也会失败。 为了诊断问题,我发现您可以使用以下参数运行adb:

adb nodaemon server

并且它将打印出无法运行的原因。 就我而言,它是adb_usb.ini文件中的空白行。

您可能在内存中adbadb守护程序的复制副本。 尝试使用任务管理器将其删除,或重新启动,看看是否有帮助。

对于使用Android Studio和MAC的用户。 这对我有用:

  1. 在Android Studio中:工具-> Android->取消选中“启用ADB集成”
  2. 在终端中:“ adb kill-server”
  3. 在Android Studio中:工具-> Android->选中“启用ADB集成”
  4. 在终端中:“ adb启动服务器”

最佳答案是特定于Windows的,但是它具有相当大的Google可见性,因此,如果您正在运行类似* nix的计算机(我在Mac上),则步骤类似:

$ killall adb
$ cd <PATH_TO_SDK>/platform-tools/
$ adb kill-server
$ adb start-server

或者,如果您像我一样,只是想访问adb,无论当前目录如何,请添加

export PATH=${PATH}:<PATH_TO_SDK>/platform-tools/

到您的~/.bash_profile

> killall adb

> adb start-server

重新启动Eclipse。

基本上adb在您的机器上的另一个进程上运行,您需要将其终止,然后再次启动守护程序,因为它们都试图绑定到同一端口(:5037)。 就我而言,我又打开了一个窗口:5037,却忘了它。 想知道为什么我不能像往常一样停下来并开始。 通过“ killall”,您可以确保终止所有进程。 您还可以进入CPU的进程并强制退出。

1. $ apt-get删除android-tools-adb

2. $ cd $ PATH_TO_SDK / platform-tools /

3. $ ./adb设备

您将看到以下内容:

  • 守护程序未运行。 立即在端口5037上启动*无法绑定'tcp:5037'ADB服务器未确认*无法启动守护程序*

那说明什么错误。

现在您重置PC,一切正常。

要么

# lsof -i:5037

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

wineserve 3609 root 268u IPv4 20118 0t0 TCP localhost:5037 (LISTEN)

# 

您将知道使用哪个软件的端口。

为了避免这种情况,只需在host_config.xml中更改以下值:

<!-- Number of tests executed between reboots. A value <= 0 disables reboots. -->
<IntValue name="maxTestCount" value="10000" />
<!-- Max size [tests] for a package to be run in batch mode. -->
<IntValue name="maxTestsInBatchMode" value="100000" />

<!-- Max time [ms] between test status updates. -->
<IntValue name="testStatusTimeoutMs" value="600000" />
adb nodaemon server

帮助。 就我而言,我已经编辑〜/ .android / adb_usb.ini,并在末尾添加了0x1949以在Kindle Fire上启用调试。 遗憾的是,它无法处理我在0x1949之后输入的换行符

我有同样的问题。 我没有正确地编辑adb_usb.ini文件(文件末尾有两个回车...是的,这很难找到。)

该文件位于与/ Users / {用户名} /。android / adb_usb.ini类似的位置

(将{user-name}替换为您自己的用户名)

确保文件完全读取(之前或之后没有空格/回车符/换行符):

“#ANDROID 3RD PARTY USB供应商ID列表-请勿编辑。”
'#使用'android update adb'生成。”
'#1每行USB供应商ID。”

(重要!!!实际文件中没有'(撇号),这是我张贴此文件的唯一方式,它不会将#解释为BOLD。)


希望可以帮助某人

如果您使用的是Android Studio,

  • 您打开了“设备选择器”对话框
  • 您尝试从命令行运行“ adb设备”

每次导致以下错误

adb server is out of date.  killing...
cannot bind 'tcp:5037'
ADB server didn't ACK
* failed to start daemon *
error:

解决方案 (轻松快捷)

关闭“设备选择器”对话框。 我的猜测是,它试图以一种非常密集的方式接管adb连接

我现在面临这个问题与Genymotion,所以我把它换成这是adb与我目前的adb 以供参考:

cd $GENYMOTION_HOME\tools
mv adb adb-old
ln -s $ANDROID_SDK\platform-tools\adb adb

还有另一种可能性。 如果您安装了任何权限管理器,例如Advanced androidPermission manager,则adb可能会失败。 卸载了该应用程序,然后没有问题。

看起来是一样的,但是有时候,命令adb kill-server无效(至少在我而言)。 因此,我尝试了其他方法。

您可以通过以下方式检查: https : //stackoverflow.com/a/34627522/5597864

在控制台中,尝试:

taskkill /F /T /IM adb.exe

进行多次,直到显示ERROR: The process "adb.exe" not found. 然后

adb devices

adb服务器未运行。 您可以在Windows中打开命令行窗口以检查哪个进程正在使用5037端口,请记住进程号。

netstat -ano |findstr "5037"

然后使用Ctrl + Alt + Delete来打开进程管理器,以杀死拥有5037端口的进程。 您可能需要尝试几次,直到5037端口可以免费使用。

打开命令,在您的adb.exe文件中定位。进入命令adb kill-server adb start-server上的文件

当它另外表示adb server is out of date. killing... adb server is out of date. killing...为您杀死它。 问题是它一旦被杀死就会重新启动。

因此,您应该考虑在adb.exe地方找到adb.exe 要做到这一点,最简单的方法是打开Task Manager ,找到一个adb.exe过程- > RMB - > Open file location - >删除它从那里。 除非不需要它,否则在这种情况下,您应该对其进行更新。 就我而言,它在C:\\Windows\\并随Visual Studio一起提供。

如果出现错误, cannot bind 'tcp:5037'并且您使用的是任何Linux发行版,例如Ubuntu,

杀死旧的ADB进程:

fuser -n tcp -k 5037

这将杀死端口5037上的adb进程,然后,

启动亚行:

adb start-server

通常,这里给出的答案对我有用,但今天却没有。 通过将仿真器和SDK从SDK管理器更新到最新版本,解决了我的问题。

在Mac或Unix上

对于在Mac或Unix上来这里的人来说,以下方法对我有用:

adb kill-server
adb server

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM