今天在eclipse中运行程序时,提示:
ADB server didn't ACK
* failed to start daemon *
baidu、google后,看很多难兄难弟说这个是豌豆夹搞的怪,打开任务管理器,找了半天也没发现,正常,因为豌豆夹上周被我卸了……
突然看到下面这位XD的解决思路可借鉴,特转载如下:
-----------------------------------------------------------------------------------
【杂症】一个豌豆荚引发的血案——关于ADB server didn't ACK
前言:
终于,还是回到了博客园,继续我的技术博客之旅,其实这段时间经历很多事情,换了份工作,开始了WP7和Android的开发工作,对于一个从Windows Mobile跳过来的开发者,还真的经历了不少曲折,今天在这里就记录一下,这个恼人的:ADB server didn't ACK~~~~~(大家可以在谷歌里搜搜……)
问题重现:
今天下午,写了不少代码后,点击那个Run按钮后,Eclipse给我报错:
[2012-06-19 15:22:19 - adb] ADB server didn't ACK
[2012-06-19 15:22:19 - adb] * failed to start daemon *
可是,可是昨天都还好好的啊,于是谷歌吧,关键词:ADB server didn't ACK,一大堆结果哦,无非如下几种:
- 重启Eclipse
- 重启电脑
- 加入环境变量
- ……
都一一试过来,还是不行,急煞我也!!!
柳暗花明:
在看帖子的过程中,众位苦逼的同行中,有一位提过:
5037端口被占用的话,也会出现如下提示……
于是乎,真像是找到了救命稻草一般,先在命令行中输入如下指令,查看5037这个端口现在是被谁占用了:
netstat -a -o 5037
然后得到如下的一个结果,还真被占用了哦:
那这个4792在我机器上,到底是个什么进程呢,好的,接着输入以下命令,把真凶找出来:
tasklist /fi "pid eq 4792"
然后,额……我郁闷了……居然是大名鼎鼎的豌豆荚:
结尾:
好了,到这里,我结束了这个进程,然后重启了Eclipse,接着,点击Run,程序就像以前一样,自动打开模拟器并加载了。此问题虽然不是很严重,但是从网络上每位遇到此问题的同学来看,大部分人还没遇到过我这个问题,所以记录在这里,希望能够帮助到大家。
原文地址:
http://www.strongcms.net/mobile/android/2012/0619/7273.html
-----------------------------------------------------------------------------------------------
我的调查结果:
根据上述思路,查看确实有程序占用端口5037,pid为4276,实际占用程序如下:
查看任务管理器,发下有一个oaadb.exe、多个oa_adb.exe进程,强行结束oaadb.exe后,过一会儿会自己启动,如果强行结束oa_adb.exe,会起很多个oa_adb.exe,特流氓。
解决办法:
没办法,我也采取了不太厚道的解决办法,查到该执行文件的位置,然后把oaadb.exe,再重启eclipse,adb顺利启动,运行OK,解决。
oaadb.exe的路径如下:
C:\Documents and Settings\Administrator\Local Settings\Temp\INPEnhUpdate
至于删了这个文件有啥影响,目前还没发现……
另外, 网上有人说,这个文件是迅雷的,这个我不太确定,话说迅雷也来搀和移动这块儿了?甭管是谁家的,这个设计太恶心了,跟病毒有啥子区别?!鄙视
相关推荐
- 如果执行`adb start-server`时仍然遇到“ADB server didn't ACK, failed to start daemon”的问题,这很可能是由于5037端口被其他程序占用。 - 可以通过查看正在运行的进程来定位占用端口的应用程序。 - 在...
在深入探讨“ADB server didn't ACK终极解决办法”这一主题之前,我们首先需要理解几个关键概念,以便于更好地掌握解决方案的精髓。ADB(Android Debug Bridge)是Android平台下的一种工具,用于实现计算机与Android...
android 开发时,出现adb server didn't ack的解决办法
然而,有时开发者可能会遇到“ADB server didn't ACK”这样的错误提示,这通常意味着ADB服务器无法确认与设备的连接。以下是对这个问题的深入解析和解决方法。 首先,"ACK"是网络通信中的一个确认信号,表示接收方...
adb(Android Debug Bridge)是 Android 开发中一个非常重要的工具,它允许开发者在 Android 设备上运行和调试 Android 应用程序。但是,有时在使用 adb 时可能会遇到一些问题,例如“adb server is out of date”的...
因为我更新了最新的adt出现ADB server didn’t ACK, failed to start daemon 然后你想启动一个程序这个时候又会出现 Please ensure that adb is correctly located at ‘E:\android-sdk-windows\platform-tools\adb....
在数据传输过程中,PC daemon通常在后台运行一个output_thread线程,用于处理来自设备的输出数据。当设备的daemon有新的数据要发送时,它会通过socket连接将数据包写入到PC的输入队列,PC daemon则负责读取这些数据...
eclipse中adb反复连接替换adb.exe
ADB server didn't ACK * failed to start daemon * ``` 这表明adb服务启动失败。此时,我们需要进一步排查问题。 #### 三、检查端口占用情况 当adb服务无法启动时,可能是由于5037端口被其他进程占用。我们可以...
在尝试使用`adb logcat`命令时,可能会遇到命令提示“adb server didn't ACK”的情况。这种现象通常表明ADB服务器未能成功启动,而服务启动失败的主要原因通常是端口绑定失败。下面是一些具体的排查步骤: 1. **...
ADB server didn't ACK *failed to start daemon* ``` 这表明ADB服务启动失败,并且进一步检查发现端口绑定出现问题。 #### 三、问题原因分析 1. **端口冲突**:通常情况下,ADB服务默认使用端口5037。如果此端口被...
首先,当遇到adb.exe运行错误时,通常会显示如“adb server didn't ACK”或“device not found”等错误信息。这可能是由于多种原因导致的: 1. **驱动程序问题**:最常见的问题是Android设备驱动程序未正确安装或...
标题"AdbServer.zip"指的是一个包含了名为"AdbServer-master"的子文件的压缩包,这通常意味着它是一个软件项目的源代码仓库。这个项目很可能与Android Debug Bridge(ADB)有关,因为"AdbServer"通常指的是一个与ADB...
然而,如果启动失败并显示“ADB server didn't ACK”,这表明`adb`服务器无法正常启动,可能是因为有其他进程占用了`adb`所使用的默认端口5037。 在上述例子中,开发者使用了`netstat -aon|findstr "5037"`命令来...
Android调试桥(android debug bridge)是一个允许开发者通过标准Java IDE,如Eclipse,在模拟器和真实设备上调试Android代码的命令行工具,本资料讲述了一些入门概念及一些常用命令
在Eclipse中创建或导入Android项目后,通过右键项目选择“运行配置” -> “Android应用程序”,指定要运行的设备或AVD,即可启动调试。 **总结** Android ADB环境配置是开发者日常工作中的一项基础工作,正确配置...
一键解决adb端口被占用 一键解决"* daemon not running. starting it now on port 5037 * * daemon started successfully * ** daemon still not running ...一键解决adb devices时 adb程序闪退问题。
在Android环境中,adb server通过Jdwp与运行中的应用进行交互,实现远程调试。 ### 3. ADB通信 #### 3.1. adb client<-->adb server adb client通过本地socket与adb server通信,发送命令请求。adb server解析...