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

执行命令

adb devices

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

我尝试过的事情。

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

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

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


当前回答

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

步骤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”。这些设备应该在线。

其他回答

其他的答案都对我没用。我刚刚在我的Galaxy S III上升级到CyanogenMod 10.1 (Android 4.2.2)。对我来说有用的是在开发人员选项中启用调试(要启用,在“关于手机”中单击7次构建号),然后通过USB插入。然后我接受了出现的提示。

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

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

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

我在运行4.2.2 OTA更新的Nexus 7上遇到了同样的问题。我几乎可以肯定我在更新后通过USB和Wi-Fi连接了ADB,直到它停止工作。为了修复,我更新了我的SDK使用:

android update sdk --no-ui

现在我的开发工具是:

SDK版本16.0.2 SDK工具版本21.1 SDK API 17,版本2

当我试图从Ubuntu在Galaxy S III上安装CyanogenMod时,我也遇到了同样的问题。最后,通过将SD卡直接连接到PC上,我简单地将ZIP文件复制到外部SD卡上。然后我将卡移回手机,当我重新启动手机时,我可以从SD卡安装CyanogenMod。

但我找到了最简单的方法 只需进入DDMS并按照图中所示进行操作…