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

执行命令

adb devices

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

我尝试过的事情。

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

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

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


当前回答

当我面对同样的问题时,我会像下面这样做:

通过在命令提示符中发出adb kill-server命令和adb start-server命令重新启动adb 关闭并重新打开USB调试 重启手机,如果它仍然不工作。 通过这些步骤,99%的问题都得到了解决。

其他回答

我通过同样的问题,这解决了我。首先通过usb连接您的手机,然后确保您检查您的移动IP在设置>>关于手机>>状态下运行以下命令。


adb kill-server
adb start-server
adb tcpip 5555 //it resets port so put port you want to connect
adb connect 192.168.1.30:5555 //ip:port of your mobile to connect
adb devices //you will be connected over wifi

在我的Nexus 7和Galaxy Nexus更新到Android 4.2.2之后,我今天也遇到了同样的问题。

解决这个问题的方法是将SDK平台工具升级到r16.0.1。对我来说,这个版本没有显示在我的SDK管理器中,所以我直接从http://dl.google.com/android/repository/platform-tools_r16.0.1-windows.zip上下载了它。

然后,您需要重命名platform-tools目录并将其解压缩到android-sdk-windows/platform-tools。在使用SDK管理器之前,我也已经更新到最新的SDK -tools。

如果您的整个Eclipse和ADT都是古老的,您可能也需要更新它们,但我不需要。

注意:您可能需要运行SDK管理器两次(一次更新自己),才能看到最新的包。

如果你的设备通常通过USB连接,但突然停止工作,特别是在USB线断开并重新连接后,在做其他答案中提到的一些更激烈的事情之前,尝试以下非侵入性步骤:

adb kill-server
adb start-server
adb devices

如果你的设备旁边有“device”字样,那么你的业务就恢复正常了。

如果您的设备旁边显示“离线”,请尝试重新启动设备。设备上的ADB守护进程偶尔会挂起。当我在LogCat运行时断开电缆,并从Wi-Fi或以太网连接切换回来后,我更注意到这一点。

如果你的设备没有列出,那么你应该尝试其他答案中的解决方案,从尝试不同的USB电缆和端口开始。那些廉价的电缆可能会坏掉。

这个方法对我很有效:

亚行kill-server 在设备管理器中禁用脱机设备(见下图) 在“设备管理器”中启用设备 亚洲开发银行启动服务器


设备管理器,“查看”菜单,“按连接的设备”:

我认为最好的方法是先禁用设备,然后从设备管理器中启用设备,然后运行adb devices命令。

转到开始选项卡,右键单击计算机 从下拉菜单中,单击Manage 在计算机管理界面中,单击“设备管理器” 在右侧窗格中,展开便携式设备以找到您的设备 右键单击设备名称,然后在下拉菜单中单击“禁用” 当它被禁用时,除了启用它外,请重复步骤5。

设备将重新上线。这是更快。