我无法再通过命令行或在Eclipse中使用ADB连接到我的设备。

运行命令

adb devices


返回设备名称,但表示它处于脱机状态。 >将操作系统恢复到以前可以正常工作的备份(CyanogenMod)
交换USB电缆
多次重启手机/计算机
更新了Android SDK

我真的不知道没有任何线索,这是怎么回事。

要清楚,如果您遇到相同的问题,则问题可能是过时的SDK。从4.2.2开始,有一项安全功能要求您确认连接设备的RSA指纹。打开SDK管理器并更新工具!然后重新启动。

评论

尝试另一个USB端口。

只有其他端口是usb3

我也遇到过这种问题。我所做的是,* issue命令adb kill-server,adb start-server。 *尝试另一个USB端口,大多数情况下它将在PC背面工作。*重新启动设备,*重新启动Eclipse,*重新启动计算机,*更改USB电缆,某些USB电缆会失效(低质量)。最后,如果问题仍未解决,请重新安装设备USB驱动程序。

重新启动我的设备也可以(4.0.4)

我也一样就我而言,我只是禁用“开发人员”选项,然后重新启用。就这样。

#1 楼

我将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 Manager,在此之前,我还更新了最新的sdk-tools。 to。

注意:您可能需要运行两次SDK Manager(一次更新自身),然后才能看到最新的软件包。

评论


我有r17,但是我遇到了同样的问题。恢复为r16.0.1会有所帮助吗?

–亚历山大·苏拉普尔(Alexander Suraphel)
13年6月29日在7:46

@spartacus我不认为,所以我认为对您来说问题可能出在其他地方。

– hack_on
2013年6月29日8:07



解决,由于缺少Android SDK平台而导致的问题

–泰岛
13年7月25日在4:41

完全按照所述顺序工作。最后一步是允许它在电话上。

–vlad
13年11月30日在5:17

只需重新启动手机或设备即可享受,无需重新启动adb。

– UMAR-MOBITSOLUTIONS
2013年12月29日上午10:36

#2 楼

在运行adb devices之后尝试运行adb kill-server。之后会弹出安全问题。为我工作。

评论


如果您的驱动程序已经是最新的并且仍然有问题,则可以使用。我认为在其他情况下也可能有效。

– kAmol
15年5月12日在9:18

确保从设备断开任何其他机器的连接。在我的情况下,我的虚拟机主机仍通过tcpip连接,我的客户机仍可以成功连接,但是它将脱机。要获得RSA提示符,我必须先在主机上运行adb kill-server命令,然后再通过adb connect 192.x.x.x在客户机上进行连接。

–user4275029
2015年12月8日14:14

之后的adb启动服务器

– Madz
16年7月6日在16:08

一般来说,这就是窍门。接受答案是特殊情况。

–拉图尔
17年5月21日在19:17

我一定错过了手机上的“允许从xx:xx:xx进行USB调试”。重新启动服务器并重新连接USB再次弹出。

– Dan Bolser
17年12月17日在22:03

#3 楼

当您使用Wi-Fi模式连接到设备时(例如,在Android Studio中或通过运行adb tcpip 5555在控制台中)似乎也经常发生这种情况。 />
断开USB连接-如果通过Wi-Fi连接则断开设备的Wi-Fi。
关闭Android Studio / Eclipse /其他IDE。
运行adb kill-server以确保adb未运行。
重新启动Android设备。
设备重新启动后,通过USB连接它并运行adb devices。这应该启动ADB守护程序。您的设备现在应该再次在线。


评论


步骤3最有可能是这里的关键解决方案!关闭命令行界面,如果进程仍在运行,请终止该进程,然后重试!

–reubenjohn
2014年2月14日在9:53



这对我有效(带有Windows 7的Galaxy Tab GT P7500)

– Sarvan
15年3月2日在13:08



为我使用Android 8.0和Windows 10

– andoni90
17年11月30日在12:05

我在没有重新启动Android设备的情况下尝试了adb kill-server,但是它没有用。当我重复这些步骤并按照第4节中的说明重新启动设备时,它开始工作。

– E235
19年2月10日在7:25

#4 楼

我在运行4.2.2 OTA更新的Nexus 7上遇到了相同的问题。我几乎可以肯定,更新之后我将通过USB和Wi-Fi建立ADB连接,直到它停止工作为止。要修复,我使用以下方法更新了我的SDK:

android update sdk --no-ui


现在我的开发工具是:


SDK rev 16.0.2
SDK工具rev 21.1
SDK API 17,rev 2


评论


““ android”未被识别为内部或外部命令,可操作程序或批处理文件。” -在我的C:驱动器的根目录下是否也有一个“ dir android.exe / s”-什么都没找到-您使用的是Linux,还是Windows用户没有的某些特殊位?

–脑塞83
13年4月4日,0:03

是的,我使用linux。 android是./sdk/tools/下的shell脚本,可启动android SDK Manager Java应用。 Windows SDK压缩包中必须有一个类似的脚本。

– dturvene
13年11月8日在22:29



只要是从您的path \ to \ android-sdk \ tools \目录完成的命令,就可以在Windows上使用该命令

–小工具
13年11月11日在21:14

在Windows 7中,要从... \ android-sdk \ tools \目录发出命令并使它运行,请运行命令窗口“以管理员身份”。

– John Jorsett
2013年12月26日在2:04

它适用于Nexus 10和Galaxy Nexus。我正在使用Windows XP SP3。我试图更改USB端口,重新启动,等等。除了这个答案,没有任何帮助。我几乎要重新安装XP,谢谢!


15年3月25日在8:42

#5 楼

我不能强调切换USB端口是关键。通常前面板USB端口可能有缺陷。

评论


也为我工作。 Nexus 10有时会为USB端口消耗过多电流

– skubo
13年12月16日在12:59

哇,在1/2个小时的死胡同之后,事实证明这是USB供电问题!谢谢!

–bigjosh
16 Mar 14 '16 at 0:27

有时它不是有缺陷的端口。就我而言,我在Windows启动期间插入了USB,但未正确加载ADB驱动程序。只需拔下插头,然后再次插入同一端口即可。 Windows奇迹...

–里卡多BRGWeb
16年6月14日在13:48

有时切换端口有效。有时,这取决于各个端口+电缆+设备组合对USB2和USB3的支持。从前端口切换到后端口,或带有或不带有“ SS”指示灯(USB3)的端口有时会有所帮助。尝试使用其他电缆有时会有所帮助。

–乔恩·亚当斯(Jon Adams)
16年7月29日在19:03

我浪费了8个小时。它可以在USB 3.0上运行,但由于某些原因(至少对我而言)不能在USB 2.0上运行。到现在为止都没有这个问题,突然之间我不得不使用3.0。现在浪费我的3.0端口之一。

–瑞安
17 Mar 16 '17 at 21:49

#6 楼

对于想知道4.2.2的任何人,电话上都会出现一个安全问题,要求与PC进行RSA验证。确保您的工具已更新,并且通过验证有关设备上的安全性问题来允许PC访问。

和往常一样,请验证是否已在开发人员选项中启用调试;)

评论


一旦我取消了USB调试授权,它便对我有用。然后禁用并重新启用USB调试。弹出“允许这台计算机”消息,BAM显示为设备而不是脱机。

–疯狂企鹅
13年12月13日在2:07

#7 楼

多个adb.exe文件?

从C:/ Windows /删除OLD adb.exe的副本时,我的问题得到解决。
我不知道adb.exe的副本进入C:\ Windows \吗?

当我从android-sdk / platform-tools /启动adb.exe时,我的检测没有问题。

评论


这就是我发生的事情。我认为两年前我下载了安装ROM的东西是罪魁祸首。

–gengkev
14-4-5在23:19



我的Windows 8出现了相同的问题,将c:\ windows \ adb.exe重命名为其他名称(adb.old.exe)解决了该问题。我什至不需要重新启动或打开/关闭命令行。它就是有效的。重命名旧的adb.exe之后,我立即输入了adb设备,然后Nexus 7询问是否要授权此计算机。我说是的,现在当我发布adb设备而不是“脱机”时,它显示为“设备”。

– AlexStack
2014年5月21日在20:31



谢谢,这一作品!我也发生了同样的事情,我认为当我们安装设备随附的驱动程序软件时,adb.exe将复制到C:\ Windows。

–thinzar00
2014年7月8日在2:55

它是怎么到达那里的:/我想知道

–张丹妮
2015年9月7日14:57在

@DanielCheung对我来说,这是在安装KingORoot和/或KingRoot pc程序时。我猜他们自己安装了一个版本,因为他们不依赖于安装了Android SDK的用户。是的,删除它从Windows目录创建的旧版本(1.0.26)对我来说解决了“离线”问题。 :)

– Venryx
16-12-28 at 6:51

#8 楼

尝试关闭USB调试一次,然后再次启用它,然后将设备与系统连接:link

评论


这当然是最简单,最可靠和最快的方法。我在此线程中使用了所有方法的许多变体。这是每次都有效的唯一方法。只需在Android设备上轻按三下,问题就解决了。

– L. D. James
17 Mar 8 '17 at 5:45

#9 楼

我遇到了这个问题,其他答案都无济于事。更新SDK并安装适用于4.2.2的API后,正在运行的是必要的:通过Wi-Fi,这是我唯一的选择,因为Mac上的USB端口确实很精致。不幸的是,基于Wi-Fi的ADB在4.2.2中没有显示安全性问题,因此您需要找到一条可以正常工作的USB电缆并通过USB连接至少一次以接受安全性问题,但是在您执行一次之后,您可以通过Wi-Fi连接。

评论


这为我做到了。谢谢。自从更新Nexus 7以来,我一直在砸墙。

–詹森·索斯韦尔(Jason Southwell)
13年7月8日在17:46

我尝试了此页面上的所有内容以及Google打开的其他一些网站,但仍将运行Android 4.0.3的HTC手机列为离线。我终于重新启动了手机,然后adb设备说它在线。伙计,我希望我早先想到了。

– John Jorsett
2014年1月2日在22:49

我收到此错误消息:设备离线,直到找到您对wifi的评论-我将手机从wifi上取下后,它就开始工作了。谢谢!

– amurrell
2014年12月6日下午1:55

#10 楼

如果您的设备通常通过USB连接,但突然停止工作,尤其是在断开USB电缆并重新连接后,请尝试执行以下非侵入性步骤,然后再执行其他答案中提到的一些更严格的事情: br />
adb kill-server
adb start-server
adb devices


如果您的设备旁边列出了“设备”,则表示您已重新营业。为此,请尝试重新启动设备。设备上的ADB守护程序有时会挂起。当LogCat运行时断开电缆连接并通过Wi-Fi或以太网从连接切换回去后,我还注意到了这一点。其他答案中的解决方案,首先尝试使用不同的USB电缆和端口。这些廉价电缆可能会变坏。

评论


这帮助解决了我的问题(Android仿真器显示为“脱机”,但按说明重新启动服务器后又回到“设备”模式)。

–Greg0ry
2014年3月2日15:30

经过数小时的尝试来查找adb不再起作用的原因之后,实际上是电缆!

– Martin L.
14年6月25日在13:19

我不止一次被坏电缆咬伤了。不良的电缆通常仍可以使设备正常充电,因此在尝试使用其他电缆之前,我也浪费了很多时间。

–斯科特
2014年6月26日在2:43

噢,天哪,我已经尝试了所有解决方案,但是最简单的解决方案-重新启动手机-却没想到。那解决了我的问题。

–alice kibin
2015年9月4日15:52

我必须使用较短的电缆-我用来给手机充电的电缆太长了!

–里克·莫滕森(Rick Mortensen)
17年7月5日在15:38

#11 楼

更新SDK工具后,一定要使用adb文件夹中的platform-tools

评论


这个usr / bin在哪里?

– AntWo
19年4月12日在8:22

#12 楼

有时可能由于adb服务器错误而发生(我认为)。它总是说

"device-name is offline" from adb devices command.


只是杀死服务器并重新启动。它对我有用。

"adb kill-server"
"adb start-server"


#13 楼

我遇到了同样的问题,这个问题已经为我解决了。首先通过USB连接手机,然后确保检查设置>>关于手机>>状态下的移动IP,运行以下命令。


adb kill-server
adb start-server
adb tcpip 5555 //it resets port so put port you want to connect
adb connect 192.168.1.30:5555 //ip:port of your mobile to connect
adb devices //you will be connected over wifi



评论


adb tcpip 5555不会重置端口,它只是为当前设备设置了默认端口,应该在连接到设备后发生,下次当您通过ip地址连接到设备时,即使在wifi网络上也不需要端口

– Ehsan sarshar
19年8月18日在5:19

#14 楼

我使用了adb connect <device_ip>,但其他解决方案都无法正常工作,因为我的问题在另一方面。在设备上,我需要stop adbd并重新启动它start adbd。设备现在再次“在线”。

评论


拥有一个Amazon Fire TV Stick,该问题通过Wifi连接时出现此问题。切换adb一次又一次,adb kill-server,adb start-server,然后adb connect ,如上所建议对我有用。

–chenware
16年7月5日在17:41

#15 楼

我尝试了dturvene和所有其他解决方案,但是它们没有用。我还需要一步。

运行这些命令



adb kill-server
android update sdk --no-ui
adb start-server

进行验证工作,在命令前后运行“ adb版本”,并确保它是最新版本。使用adb kill-server命令的原因是它很可能正在运行,并且在运行时无法更新,因此必须首先将其杀死。

#16 楼

对我而言,没有任何作用。我花了大约12个小时不断地在Internet上搜索并尝试适用于其他遇到类似问题的人的解决方案。

最后,我最终只是通过LAN完成ADB的工作。该设置紧邻USB调试设置,在ADB中可以通过“ adb connect [IPADDRESS]:[PORT]”激活。我的手机上的端口号是5555。

#17 楼

这种方法对我有用:


设备管理器,“查看”菜单,“按连接的设备”:



#18 楼

安装了最新的android sdk。
更改了设备的USB端口。
从MTP更改为->仅充电-> MTP。
它起作用了。

评论


对我来说,从“传输媒体文件”更改为“传输图像”(即PTP / MTP)已解决了该问题(尝试了所有其他修复程序,包括升级Android SDK,使用不同的电缆,重新启动ADB,循环开发人员模式,拔出/将USB重新插入其他端口等)。烦人的是,该答案的得分为0,当我在寻找答案时位于第二页,因此请投票支持以后尝试帮助他人。

–史蒂芬·克拉夫特(Steven Craft)
16-10-1在16:06

#19 楼

最初,我遇到了同样的问题(从GitHub下载了ADB / fastboot),但最终我使它起作用。适用于我的工具:


Android SDK。 ADB版本:1.0.31
使用正面USB端口(MacBook Pro 15英寸)
在启用Dev选项和USB调试后重新启动手机(方法是7次点击设置>关于手机>构建)。
如果没有列出设备,请杀死adb服务器(adb kill-server)。
调试图标应该在手机上可见。确认对话框。


#20 楼

如果您之前已经授权了PC的RSA指纹,并且没有运气尝试过adb kill-server等,那么您的问题可能就是您试图在锁定时与其连接。尝试按下屏幕上的按钮并输入您的图案-这已为我修复。

#21 楼

我认为最好的方法是从设备管理器中禁用然后启用设备,然后运行adb devices命令。


转到“开始”选项卡,然后右键单击“计算机”

从下拉菜单中单击管理

在计算机管理屏幕中,单击设备管理器
在右窗格中,展开便携式设备以找到您的设备
右键单击在您的设备名称上,然后单击下拉菜单上的“禁用”。
禁用该设备后,请重复执行第5步,除非启用它。

该设备将重新联机。更快。

#22 楼

对于ADB连接不稳定的人,如果他们在Mac上并且安装了Android File Transfer,则还有另一种可能性:我发现文件传输干扰了我的ADB连接,导致其间歇性地停止工作。

杀死Android File Transfer Agent.app进程以查找连接到Mac的兼容设备(例如Nexus 7)可以为我消除脆弱感。

评论


这就是导致我在OS X上出现问题的原因,谢谢!

–adaam
2015年10月1日19:38

#23 楼

由于没人能回答我的情况:您可能无权访问〜/ .android / adbkey文件。如果最初使用sudo启动adb,它将生成一个公钥对,并将其写入〜/ .android / adbkey.pub和〜/ android / adbkey。当然,私钥是chmod 600-仅对主目录中的root可读。随后,以普通用户身份启动adb将无法访问私钥文件,而私钥文件又将因“设备离线”而静默失败。

#24 楼

在Mac上为我解决的是将adb更新到最新版本(1.0.32)。现在我可以再次在网上看到我的设备了

#25 楼

设备被报告为脱机的原因是adb无法连接到该设备。开发环境中的Adb可执行文件将与受控设备建立连接(套接字)。设备具有用于侦听此通信的服务(守护程序)。该守护程序称为adbd(与adbdaemon一样)。
实际上,在设备上启用adb时,一个人启动了该守护程序,因此可以与该设备建立通信。

adb报告为脱机是因为守护程序不再运行或处于不接受连接的状态。如果网络在活动的(网络)连接上出现故障,通常不会发生这种情况。可以通过许多其他方式使设备处于离线状态,但始终可以重启设备。

#26 楼

当我遇到与以下操作相同的问题时:


通过在命令提示符下发出adb kill-server和adb start-server来重新启动adb
禁用并重新在手机上启用USB调试
如果仍然无法启动手机,请重新启动手机。
这些步骤已解决了我99%的问题。


评论


4.尝试将电缆插入另一个USB插槽。对我而言,这很有帮助。

– dredkin
20 May 19 '13:19

#27 楼

仅仅是因为您的计算机没有正确的驱动程序。要解决此问题,请执行以下操作:


下载并解压缩Android SDK
转到设备管理器(右键单击计算机->属性->设备管理器
在右侧窗格,展开便携式设备以找到您的设备
,右键单击设备名称,然后单击“更新驱动程序软件”。
在步骤1上浏览我的计算机以获取驱动程序软件。
浏览到Android SDK文件夹。
>下一步,您就完成了


评论


我在Windows 7和Nexus 7上也是如此。

–MichałK
2014年12月3日,12:57

就我而言,这是我的USB 3.0控制器驱动程序不起作用!不是手机的驱动程序!

–VCD
18年4月15日在8:07

#28 楼

尝试按以下方式重新启动adb服务器:

adb kill-server

adb start-server


我也遇到了与您同样的问题。并重新启动adb服务器将解决此问题。

#29 楼

我进行了很多次更新,直到无法更新为止,但是屏幕上从未出现提示。我只是使设备保持脱机状态。

我的问题是我正在从与实际更新目录不同的目录中运行ADB命令。 ADB exe是:

C:\Program Files (x86)\Android\android-sdk\platform-tools\


#30 楼

重新启动设备。我尝试了此处列出的所有内容,以使HTC手机(运行Android 4.0.3)正常工作,但是adb devices一直说它处于离线状态。重新启动电话后,它终于联机了。此处的其他一些建议可能有助于识别电话,但是在尝试过程中进行一些重新启动肯定不会造成伤害。