我花了几天时间尝试启动任何Android程序。甚至“Hello World”也给出了同样的错误:

“与亚行的连接中断,发生了严重错误”。

我在一台Windows XP机器上运行Eclipse v3.5 (Galileo),谷歌api 2.2.8。

我已经使用了我在网上能找到的所有技巧:命令行“adb kill-server”,DDMS“reset adb”,我在Eclipse之前和之后都启动了模拟器,并搜索其他程序正在使用的端口。

这是怎么回事?是否存在Eclipse、Java、ADB、模拟器和其他任何有效版本的神奇组合?


当前回答

我尝试过“adb kill-server”,重启了Eclipse太多次。我甚至重启了我的电脑。它们不起作用。

最后,我关掉了手机的测试模式,又打开了。然后一切看起来都很好。

其他回答

我也遇到了同样的问题,原来我的防病毒程序(Comodo)沙箱化了adb.exe,这就是为什么它不起作用的原因。我关闭了杀毒软件,它工作得很好。考虑到。

我发现SDK的路径(首选项*→Android→SDK位置)是原因。我的SDK路径如下:

C:\Program Files (x86)\Android\android-sdk

路径上的空格是问题所在。要使它工作,必须将Program Files (x86)更改为Progra~2

正确的完整路径是C:\Progra~2\Android\ Android -sdk。

现在应该可以了。

下面是我运行的重启adb (Android调试桥)服务器的脚本:

#!/usr/bin/env bash

## Summary: restart adb (Android Debug Brdige) server.

## adb binary full path
ADB_BIN=./adb


if pgrep adb >/dev/null 2>&1
then
    echo "adb is running"
    echo "terminating adb ..."
    $ADB_BIN kill-server
    if pgrep adb >/dev/null 2>&1
    then
        echo "did not work"
        echo "kill adb processes by killall"
        killall -9 adb
    else
        echo "terminated"
    fi
else
    echo "adb is not running"
fi

echo "starting adb ..."

$ADB_BIN start-server

echo "adb process:"

echo `pgrep adb`

echo "done"

# END

另一个错误原因可能是您可能将adb.exe设置为以管理员权限运行。

如果您正在使用Genymotion模拟器:

确保Genymotion使用的SDK路径与Eclipse使用的路径相同。

如果这两条路径不同,也会发生此错误。