我再也不能通过命令行或Eclipse使用ADB连接到我的设备了。
执行命令
adb devices
返回设备名称,但显示为脱机状态。
我尝试过的事情。
切换Android调试模式
重新安装谷歌USB驱动
将操作系统恢复到以前工作的备份(CyanogenMod)
换掉USB数据线
多次重启电话/电脑
更新Android SDK
我真的不知道发生了什么。你觉得我还能试什么,我洗耳恭听。
需要明确的是,如果你遇到了同样的问题,那么问题可能是SDK过时了。从4.2.2开始,有一个安全特性需要您确认连接设备的RSA指纹。打开SDK管理器并更新工具!然后重新启动。
不是真正的答案,但更有助于解决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
在我的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管理器两次(一次更新自己),才能看到最新的包。
如果你在通过tcpip无线连接你的设备时得到这个,然后尝试断开你的设备:
Adb disconnect <your_ip_address>:port_number或Adb disconnect
eg
Adb disconnect 192.168.1.2:5555
或
亚行断开
不同之处在于,第一个将只断开所需的设备,第二个将断开所有设备。
使用此命令的好处是您不必关闭并重新启动服务器。关闭和重新启动服务器需要你的设备连接到你的电脑,这是最恼人的过程。