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

执行命令

adb devices

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

我尝试过的事情。

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

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

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


当前回答

对我来说最有效的是:

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

其他回答

分享一下我的情况:

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

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

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

这些答案对我都没用。设备一直处于离线状态。真正解决这个问题的是耐心!

也就是说,在adb connect命令执行后,只需等待一分钟即可自动修复100%的问题。

只需从Tools -> Android中启用/禁用ADB集成。这对我很管用。我使用的是Android Studio测试版。

由于没有人对我的情况给出答案:您可能无法访问~/。android / adbkey文件。如果最初使用sudo启动adb,它将生成一个公钥对,将其写入~/.android/adbkey。Pub和~/android/adbkey。当然,私钥是chmod 600—仅对主目录中的根目录可读。随后以普通用户启动adb将不允许访问私钥文件,这反过来会以“设备脱机”的方式无声地失败。

对于ADB连接不稳定的人来说,如果他们使用的是Mac电脑,并且安装了Android File Transfer,那么还有一种可能:我发现文件传输干扰了我的ADB连接,导致它断断续续地停止工作。

关闭Android文件传输代理。应用程序进程,寻找兼容的设备(例如,Nexus 7)连接到Mac,解决了我的问题。