我再也不能通过命令行或Eclipse使用ADB连接到我的设备了。

执行命令

adb devices

返回设备名称,但显示为脱机状态。

我尝试过的事情。

切换Android调试模式 重新安装谷歌USB驱动 将操作系统恢复到以前工作的备份(CyanogenMod) 换掉USB数据线 多次重启电话/电脑 更新Android SDK

我真的不知道发生了什么。你觉得我还能试什么,我洗耳恭听。

需要明确的是,如果你遇到了同样的问题,那么问题可能是SDK过时了。从4.2.2开始,有一个安全特性需要您确认连接设备的RSA指纹。打开SDK管理器并更新工具!然后重新启动。


当前回答

这些答案对我都没用,我也试过无线。我注意到adb.exe一直在我的系统进程中运行。右键点击它们,发现adb从安装的应用程序(在我的例子中是Droid Explorer)自动运行。一旦我卸载了自动启动ADB的应用程序,我就可以终止进程,并看到ADB不再自己运行。从平台工具中运行更新后的adb,一切就绪!希望这能帮助到一些人。

其他回答

下面是您可以通过命令行执行的步骤。无需访问设备。

步骤1:执行“adb devices -l”,您将看到离线设备。现在记下usb后面的数字:Example=> usb:1-1.4.2

步骤2:echo '1-1.4.2' |sudo tee /sys/bus/usb/drivers/usb/unbind

步骤3:echo '1-1.4.2' |sudo tee /sys/bus/usb/drivers/usb/bind

步骤4:检查“adb devices -l”。这些设备应该在线。

我尝试了上面所有的解决方案。大多数情况下,adb kill-server可以解决这个问题。这次问题出在USB线上。包装花哨的劣质电缆是行不通的。

我也遇到过这个问题。我更新了Android SDK管理器中的所有内容,使用设备管理器卸载了我的设备,现在它可以正常工作了。一路上我发出了一些“kill-server”和“start-server”。

分享一下我的情况:

在我的局域网中,所有的andorid板都有相同的默认MAC地址。 所以它将通过DHCP获得相同的IP,因为它有相同的MAC地址。

在局域网中,有多个具有相同IP的android板。 adb可以连接到板子(其中一个),可以打开板子(其中一个)的shell,但在将文件推到板子或其他操作时,会出现“设备离线”。

解决方案: 重写MAC地址,得到不同的IP。

在尝试了两次之后,我将手机软件回滚到一个稳定的版本,它终于工作了。我在运行Cyanogen nightlies。无论如何,在这个帖子中发布的东西应该可以帮助遇到这个问题的任何人。