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

执行命令

adb devices

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

我尝试过的事情。

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

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

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


当前回答

我的USB连接有问题,所以我试着接上wifi连接。这里几乎什么都试过了,但有一件事我直到最后才尝试,突然它起作用了!所以,如果你被困住了,试试下面这些步骤:

 1. Connect with USB cord
 2. adb devices
List of devices attached
HT85X1A00342    device
10.0.0.43:5555  offline

 3. adb usb
restarting in USB mode

 4. adb reconnect
reconnecting HT85X1A00342 [device]

 5. adb tcpip 5555
restarting in TCP mode port: 5555

 6. adb devices
List of devices attached

 7. adb connect 10.0.0.43:5555
connected to 10.0.0.43:5555

甜蜜的!我不知道强制它重新启动USB模式,然后依次启动TCP/IP模式是否有帮助,或者仅仅是最后三个命令,但显然它开始工作了。我还发现有一个开发者选项可以在Wifi上启用调试,你可以选择你的热点。这也可能会阻止它工作,所以也要检查一下。

好运!

其他回答

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

不是真正的答案,但更有助于解决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

分享一下我的情况:

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

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

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

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

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

我也遇到过这个问题。我更新了Android SDK管理器中的所有内容,使用设备管理器卸载了我的设备,现在它可以正常工作了。一路上我发出了一些“kill-server”和“start-server”。