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

执行命令

adb devices

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

我尝试过的事情。

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

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

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


当前回答

在更新SDK工具后,请确保从您的platform-tools文件夹中使用adb。

在我意识到我使用的是复制在/usr/bin中的过时ADB版本后,我终于让它工作了。

其他回答

安装最新的android sdk。 修改设备的USB端口。 由MTP -> Charge only -> MTP改变。 它工作。

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

我惊讶地发现我的解决方案没有列在这里。

我有一台LG G3。手机必须使用LG的驱动程序连接。我去了

设备管理>卸载MTP驱动程序

adb立即在1秒内工作。

从设备打开开发人员选项,然后禁用USB调试。

在我的三星Galaxy S III上最新的CyanogenMod夜间更新(2013年8月12日)后,我开始面临同样的问题。

我使用了最上面的答案(由w. allison编辑的hack_on)中建议的ADB二进制文件,我在我的手机上得到了一个提示,要求允许访问我的PC(它的RSA密钥)!!现在工作得很好。

下载链接(仅限ADB、Fastboot和相关二进制文件):https://dl.google.com/android/repository/platform-tools_r16.0.1-windows.zip