Android adb“无法打开同步连接!”

时间:2010-10-12 07:50:19

标签: android eclipse adb

我可以在手机上运行和调试我的Android应用,大部分时间都可以。然后,看似随机,当我尝试从Eclipse运行或调试我的应用程序时,Eclipse中的控制台说:

[2010-10-12 09:36:48 - myapp] Android Launch!
[2010-10-12 09:36:48 - myapp] adb is running normally.
[2010-10-12 09:36:48 - myapp] Performing com.mycompany.myapp.MyActivity activity launch
[2010-10-12 09:36:48 - myapp] Automatic Target Mode: using device 'HT01TP800561'
[2010-10-12 09:36:48 - myapp] Uploading myapp.apk onto device 'HT01TP800561'
[2010-10-12 09:36:48 - myapp] Failed to upload myapp.apk on device 'HT01TP800561'
[2010-10-12 09:36:48 - myapp] java.io.IOException: Unable to open sync connection!
[2010-10-12 09:36:48 - myapp] Launch canceled!
  • 重试:没有帮助,相同的消息。
  • 重启Eclipse:没有帮助。
  • 重新启动adb(adb kill-server && adb start-server):没有错误,没有帮助。
  • 重新连接手机:有时有帮助。
  • 重新启动计算机:有点激烈,还没试过这个。

使用Ubuntu 10.4,Eclipse Galileo 3.5.2,Android SDK 7,ADT插件0.9.6,Nexus One,Android 2.2.1。

有什么好主意吗?

18 个答案:

答案 0 :(得分:416)

我遇到了完全相同的问题,但我已将手机连接到电脑的USB端口。有时断开并重新连接电源线,但它完全停止工作。 但是,在手机上禁用USB调试然后重新启用它已经工作到目前为止。希望它继续工作!这些修复看起来真的很傻。我不确定底层问题是什么。

答案 1 :(得分:25)

我只能通过在手机上循环USB调试选项来清除这一点。

答案 2 :(得分:3)

Nexus One,CyanogenMod 7(Android 2.3.7)...禁用并重新启用:

设置>应用程序>开发> USB调试

现在一切都在Eclipse和Mac OS X 10.7.3上运行。

答案 3 :(得分:3)

这也可能与“太多打开文件”问题有关。我在上面遇到“同步”错误时手动尝试安装应用程序,当我得到“太多打开文件”的线索时。基于some old posts的一个粗暴的解决方法似乎是重新启动手机,一位谷歌工程师建议两次这样做,这是第一次进入睡眠模式之前的第二次(详情为何在帖子中)。

那是几年前的事了,也许他们已经解决了这个问题,或者只是在通常的情况下做了一些事情来解决这个问题,并且重新安装 - 作为开发的一部分并不是它解决的问题。

答案 4 :(得分:2)

Android Debug Bridge(从我们的计算机向连接的设备发送数据的工具)断开连接时,会发生此错误。我们知道,有一些层可以像adb本身一样连接,当然,最后一层是USB线,所以当你已经尝试重新启动adb脚本并且看起来不起作用时,你只需要重新连接你的线缆。

答案 5 :(得分:2)

我遇到了同样的问题,重启ADB对我不起作用。有时重新启动我的手机工作但并非总是如此,由于这个故障我无法编程大约一周,我想我终于找到了解决方法! :-D

首先,杀死手机上运行的每个程序。拥有某种任务管理器使这成为一项快速任务,否则你将不得不一次手动杀死它们。

如果不能解决问题,则需要转到手机设置,然后转到“应用程序”,然后转到“运行服务”,并终止其中的所有服务。我正在使用Droid Incredible,但我还没有让它对我起作用。 : - )

所以,简短的回答是,杀死所有应用程序和所有服务。

另外,请记住,您需要关闭并重新打开eclipse以查看此修复程序是否适用于您。我希望这对你有用,我知道它对我有用! :-D

答案 6 :(得分:2)

我通过在设备上禁用和启用调试配置来修复它(SonyEricsson Xperia)

答案 7 :(得分:2)

当我通过键盘的USB集线器连接手机时,我遇到了同样的问题。当我直接连接到计算机的USB端口时,它就消失了。

答案 8 :(得分:2)

如果在Kindle Fire上发生这种情况,我只需将其关闭然后重新打开。

答案 9 :(得分:1)

解决方案很可能在您的Android手机上运行(在本地终端或ssh终端上):   $ stop adbd;启动adb

我不喜欢像重新启动手机这样的过度解决方案......在Linux下通常不需要这样做。通过Wifi连接时我遇到了同样的问题,因此USB可能根本不负责任。从user655489读回答,我有了运行lsof,然后运行lsof |的想法grep adbd | wc -l =>我认为我有多个插座打开,所有FD从0到1023正在使用......多么可疑。

我运行了killall adbd,然后重新启动adbd per How can I connect to Android with ADB over TCP?问题就消失了。

原因是,至少在调试和不得不杀死我的非工作应用程序时,几个套接字永远不会被关闭。

答案 10 :(得分:1)

对我有帮助的是以下内容: ++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++

如果您在AndroidX86上进行调试(或者对您的Android开发者机器具有root访问权限) 杀死“adbd”进程..让它重新启动。

e.g。

[在Android VM上]

  • kill adbd(例如kill `ps a| grep adbd | awk ' { print $2 } '`)
  • / sbin / adbd将自动重启

[在DEV站上]

  • [dev station] ./adb disconnect
  • [dev station] ./adb connect

如果您没有root,可能切换USB调试,重启等也可能有所帮助。 因为它也重新启动adbd ++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++

答案 11 :(得分:1)

重新启动手机也解决了这个问题,每当重新安装USB电缆没有解决它

答案 12 :(得分:1)

我经常在连接的设备(手机或平板电脑)甚至模拟器中看到这个问题。我注意到问题通常是在不活动期间(例如午休后)。可能是开发机器上的操作系统正试图节省资源而adb并不是JIT友好的。 在Windows上,我必须关闭IDE并打开任务管理器并强制停止(终止)adb,然后重新启动Eclipse。这对我来说总是有用......

  • 我注意到如果我在adb的任务管理器中设置了更高的优先级,这个问题会大大减少 - 尽管它仍然可以发生。

答案 13 :(得分:0)

我经常遇到这个问题(我的意思是每次我启动Debug)。我使用的是相当长的USB线。我切换到原来的HTC USB线很短,问题就没了!

答案 14 :(得分:0)

当我的USB线通过键盘USB :O连接到PC时,我遇到了这个问题。当我直接将它连接到PC时,我的问题就解决了。

我希望这有效。

享受!

答案 15 :(得分:0)

根据Maven Explanation我尝试了这个解决方案。但我遇到了同样的问题。所以我重新启动设备。它开始完美运作。

答案 16 :(得分:0)

试试这个,

在手机上禁用USB调试,然后在

下重新启用

设置 - >应用程序 - >发展 - > USB调试

它的工作正常。

答案 17 :(得分:0)

此解决方案适合我

  1. 单击“撤消USB调试授权”。
  2. 单击“确定”。
  3. 重新连接USB。
  4. 单击“确定”以获取权限。
  5. enter image description here