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

执行命令

adb devices

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

我尝试过的事情。

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

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

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


当前回答

对我来说最有效的是:

拆卸USB并重新插入。 在adb kill-server之后使用adb设备 有时,切换到计算机上不同的USB端口将解决问题。

其他回答

我尝试了dturvene和其他所有的解决方案,但它们都不起作用。我需要再走一步。

运行这些命令

亚行kill-server Android更新SDK—无ui 亚洲开发银行启动服务器

为了验证它是否有效,在命令之前和之后运行'adb version',并确保它是最新的。使用adb kill-server命令的原因是它很可能正在运行,并且在运行时不能更新,因此必须首先杀死它。

我在运行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

不是真正的答案,但更有助于解决CM的明显问题。 我有一个HTC Inspire HD运行cm-11-20140309非官方BR1-ace(稳定版本)。我可以在更新之前使用adb,但我从来没有安装SDK,因为我不需要。以上所有方法我都试过了。

起初我以为我的问题是MTP驱动程序,但事实并非如此。在安装和更新SDK到包括4.4.2之后,HTC MTP设备驱动程序在通过USB连接时安装正常,但在新的SDK安装位置使用adb时,在MTP和ptp模式下,设备仍然显示为离线,同时调试和打开。当我关闭usb调试手机自动重启,我收到错误:

"不幸的是进程android.process.media已停止"

新的CM在developer options下有一个选项,可以启用通过WIFI进行调试,所以我也尝试了一下,结果显示无法连接到IP地址和端口。和其他海报一样,我能ping通IP地址。

我还检查了启用ADB和应用程序的根访问选项,因为它只设置为apps,当我使用ADB设备时,手机仍然显示离线,偶尔它会抛出如上所示的相同错误。

编辑:

现在,我的手机强制重新启动,我重新启动调试,插入并运行adb设备,最后手机提示我输入RSA密钥。由于某种原因,我之前没有收到提示,现在电话接通了。因此,问题可能是在重新启动后,需要将根访问权限从应用程序切换到应用程序和adb。

以下是它显示离线的原因:http://playingwithsid.blogspot.com/2013/05/android-device-offline-fixing-adb.html

Try

adb usb 

我将我的连接方法更改为tcpip,然后我认为如果我杀死服务器并启动它,它将重置连接方法,但它不会

这就是为什么之前的答案都不适用于我的情况

如果以上任何一个提示都不起作用,请尝试以下步骤解锁OEM:

打开命令提示符并设置平台工具路径。 输入“adb reboot bootloader”。 然后输入“fastboot oem unlock”。 在少数设备上,这将需要更多的时间。请耐心等待15分钟。 重新启动设备