ADB不断断开连接,显示设备离线


36

我不确定是应该在此处还是在主堆栈溢出中进行100%的确定,但是我决定选择该领域,希望我可以找到遇到类似问题的更具体经验的人。

我有一个Samsung Captivate(爱它,减去它的GPS笨拙)。我使用两台不同的计算机进行开发,其中一台在家中,一台在工作中。这些机器都是Windows XP Service Pack 3(32位)。我安装了相同的Samsung驱动程序,相同版本的Eclipse等。该手机当前植根于Serendipity mod,尽管此问题与常规固件完全相同。

我的家用计算机(问题之一)是Athlon 64 2.2 Ghz。我的工作机器是Core 2 Duo,请不要记得它的型号。

在工作中,我可以做任何事情,将sdcard安装在手机上并轻松复制,使用adb进行推,拉,卸载,安装。我可以在ddms中调试,通过Eclipse等安装,等等。

在家里,如果我重新启动计算机和电话,并在没有打开Eclipse的情况下拉起命令提示符,则可以通过键入adb设备来查看该设备。通常,然后,我可以清除logcat或相当稳定地运行logcat。如果我打开Eclispe(我的开发IDE)并尝试运行新版应用程序,则通常会失去连接。如果我尝试通过挂载或对adb使用pull来复制文件,则会发生相同的情况。一些文件将被复制,突然连接将消失,设备将脱机显示给adb,或根本不在列表中,或两次脱机列出。重新启动手机有时会有所帮助,但并非总是如此。有时我关闭Eclipse和所有其他应用程序,重新启动手机,但最终仍然无法使adb完全检测到该设备。一世' ll使用adb kill-server和adb start-server,但这通常无济于事。我在家中将Avast用作防病毒软件,但尝试完全不安装任何防病毒软件,这是相同的。由于硬盘崩溃,我最近重新安装了Windows,它是完全一样的。我已经尝试过塔上的每个USB端口。

我希望有很多人能告诉我这是怎么回事,因为我已经处理了一年半,这将使我迷失方向。

-耶利米


1
我有一个类似的问题,但这只是我在家中使用的电缆上的松动连接
cjk 2011年

2
当我分离并重新连接USB电缆时,问题就消失了。不知道这是电缆问题还是某种超时问题。有什么线索吗?
Trojan.ZBOT

这总是发生在我身上,但无论出于何种原因,只有在我在车上调试时才会发生。奇怪的。
Dave Jensen

调试时,设备随附的USB电缆因该问题而臭名昭著。充电是可以的。无论如何,我换成了旧的(有时更短)的USB电缆,现在可以使用了。
像素

Pixel 2和Macbook Pro 15英寸2018也有同样的问题。我的USB C到USB C型电缆是Google的原始电缆
ericn

Answers:


23

从USB 3.0端口切换到USB 2.0为我解决了这个问题。如今,大多数笔记本电脑都同时具有两种端口类型。


1
你救了我的一天。安装APK时,旧手机一直在USB 3上保持断开连接
Climbatize

对我来说也是一样。它也是一台较新的设备...但是,插入3.0端口后,它会不断断开连接。将其移至2.0端口效果很好。
肖恩·莱纳

太神奇了,我从不认为问题出在usb端口上。
fangzhzh

是的 与@Climbatize有相同的问题。必须交换USB端口,直到找到该设备喜欢的端口。较新的设备在相同的端口上没有问题,但是较旧的设备会在每次Android Studio尝试安装APK时断开连接。
aroth

7

通过有源USB集线器连接设备。某些机器(包括新的Apple Macbook)的USB端口电量不足,导致ADB不断断开连接。

如果设备已植根,则可以通过wifi将其连接到adb。这非常舒适,远远超过有线USB。当然,您并不总是拥有根设备。


1
有趣。还有其他人遇到Macintosh便携式计算机无法为连接的设备提供足够电源的问题吗?
Scott Biggs,2015年

2
您不需要WIFI即可连接tcp ip adb。只需要首先有一个可用的USB ADB即可使电话上的ADB监听TCP / IP。将其连接到usb adb上,键入adb tcpip 5555,断开usb,键入adb connect your.phone.ip.number
Lassi Kinnunen

我不敢相信我今天才遇到这个问题。我有一台MacBook Pro(15英寸视网膜,2013年末),这个问题已经出现了几个月,并在互联网上进行了搜索。我的Galaxy S6会随机断开连接(通常在几分之一秒内,总是在连接后一分钟之内)。我只是通过有源USB集线器和bam插入了它!它只是工作。谢谢@grebulon。
Pawel Decowski

不确定是否相关,但只需从MacBook Pro(Retina,15英寸,2012年)上的左USB端口切换到右USB端口,显然可以解决该问题!
jcaron

3

很久以来这一直困扰着我。Logcat会消失,或者需要将电话重新连接到USB以使ADB能够正确查看它。

对我有用的是在PC上使用后部USB端口之一。前面的那些可能正在通过一个不可靠的集线器或不可靠的USB集线器软件。因此,如果您使用正面USB端口,请尝试背面的端口。


1

我曾经遇到过同样的问题,而且我的logcat会在Eclipse中清除并停止更新,不同之处在于那时我使用的是官方的Samsung ROM。切换到Darky的ROM后,稳定性得到了改善。尽管如此,该设备仍然时不时地消失,但是通常在重新连接USB后它会重新出现。我的PC与您的PC(Atom D525,Win7)有所不同,因此我可以确认它不仅限于单个设备/操作系统。

我建议刷新ROM或更新(如果可能)。或者,您也可以在另一部手机上尝试一下,看看是否是特定于您手机的错误。另一方面,亚行并不是最稳定的软件,因此可能只是烦人的麻烦。


我可能会尝试一个充满活力的伙伴...这是一个想法...但是,我不确定Rom是否会成为问题,因为在库存固件和Serendipity上,一切的表现都完全相同...尽管我一直好奇地尝试萤火虫...我们会看到的。
Maximus

1

对我来说,听起来您家里有一些不良的硬件或驱动程序。确保您没有与Kies跑步相关的任何事物;Kies + Samsung Windows驱动程序似乎会导致USB连接出现不稳定现象,这在机器之间有所不同...

首先尝试其他USB端口和电缆。


我倾向于在这里同意...我觉得基本上必须与家用计算机(板/ CPU / USB端口)兼容/不兼容。不过,我在使用其他任何USB设备时都没有遇到任何麻烦……我在两个地方都使用了相同的电缆……很好……我想我只是被搞砸了。我距离使用新主板升级家用计算机还有一段距离。因此,我认为这将不得不发生。虽然很糟糕,但我实在不需要更快的机器,但我的发展并不是特别激烈……
Maximus

1

Nexus 4在Windows 8上运行Cyogenmod 11时,我遇到了同样的问题。我使用USB分配器插入手机,但在被LogCat / DDMS识别后的几秒钟内,手机仍会断开连接。切换到计算机上的物理端口可以解决问题。就我而言,前面的USB端口工作正常。



1

我正在使用LG G3棉花糖。我不知道为什么,但是当我Developer options > Networking section > Select USB Configuration > MTP修复它时。

在此之前,每当我将手机插入PC时,驱动程序安装窗口始终在开始时冻结,但是当我更改为MTP连接时,驱动程序安装窗口会立即识别出它,并且电话图标更改为LG手机图标并完成安装。


太棒了!我在这里尝试所有评论,但没有任何解决方法。这只是一种魅力!我放了一个选项“” Charging“并修复它,这一定是一个很奇怪的问题,但是现在可以正常工作!请放心,我的生命丹尼尔!
jfcogato

1

找到位置android-sdk-windows\platform-tools

打开命令提示符,然后运行以下命令:

cd c:\ android \ sdk \ android-sdk-windows \ platform-tools
adb.exe杀服务器
adb.exe启动服务器

这些步骤可以解决您的问题。


不要忘记,您的android-sdk-windows目录可能有所不同。因此,您必须自己更改字符串=> c:\ android \ sdk \ android-sdk-windows \ platform-tools
msolak

1
OP写道:“ 我将使用adb kill-server和adb start-server,但这通常无济于事 ”。
Firelord

这是一种解决方法,而不是解决方案。
dm78 '16

0

这里同样的问题;我在没有其他驱动程序的gnu / linux上使用adb。

解决方法:拔下并重新插入USB

http://forum.xda-developers.com/showthread.php?p=17111464#post17111464


当前,我的工作方法是(并且我仍然认为这很糟)是构建,关闭Eclipse并插拔,直到进入adb设备显示该设备为止。如果我有多个显示,adb kill-server,然后插入和adb设备。非常乏味。
Maximus

2
令人沮丧的是,此链接转到一个论坛,该论坛具有到另一个堆栈交换站点的链接,该站点也链接到该线程。
bahamat


0

更新到MacOS Sierra时,具有相同症状的另一个问题。这是一个解决方法脚本:

#!/bin/bash

cat << EOF
###########################################################
# Workaround adb disconnecting issue on macOS Sierra
#
# More info:
# https://code.google.com/p/android/issues/detail?id=219085
# credits to: hans...@meetme.com, vs...@google.com
###########################################################

EOF

function monitor_adb () {
  adb start-server
  echo "[$(date)] adb started"

  while [ "$(adb shell echo 1)" ]; do sleep 5; done

  echo "[$(date)] adb is broken, restarting"

  adb kill-server
  adb start-server || adb start-server
  adb reverse tcp:8081 tcp:8081
}

while [ true ]; do time monitor_adb ; done

这对我不起作用。杀死/开始只是没有运气的循环。MBP Retina 2015 Yosemite与S6 Edge FYI。
亚当·K·迪恩

1
这不再需要。错误已在24.0.4或更高版本中修复。如此处所示:code.google.com/p/android/issues/detail?
id=219085


0

以下两种解决方案对我有用。

您可以尝试两者之一或两者。

  1. 重新启动设备。
  2. 释放一些内部存储空间(在大多数情况下有效)。


0

每次您打开adb连接打开时都会发生这种情况,使用adb会话后需要断开连接,断开连接只需运行

adb disconnect <ipaddress>

您将ipaddress替换为android设备的ip,与adb connect相同。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.