97

我使用 SDK 2.2 将 HTC Comet 连接到 Eclipse。我做了一个调试版本——应用程序没有运行;虽然它确实安装在设备上。在设备上,我在 Comet 屏幕上收到此消息框

等待调试器
应用程序 HunyDew(进程 com.airvine.hunydew)正在等待调试器附加。
[强制关闭]

而在 Eclipse 控制台中,我收到了这些消息集

[2010-12-07 01:42:29 - hunydewprj] Android Launch!  
[2010-12-07 01:42:29 - hunydewprj] adb is running normally.  
[2010-12-07 01:42:29 - hunydewprj] Performing com.airvine.hunydew.HunyDewAAStartsHere activity launch  
[2010-12-07 01:42:47 - hunydewprj] Application already deployed. No need to reinstall.  
[2010-12-07 01:42:47 - hunydewprj] Starting activity com.airvine.hunydew.HunyDewAAStartsHere on device 308730C861BC  
[2010-12-07 01:42:49 - hunydewprj] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.airvine.hunydew/.HunyDewAAStartsHere }  
[2010-12-07 01:42:49 - hunydewprj] Attempting to connect debugger to 'com.airvine.hunydew' on port 8601  
[2010-12-07 01:43:09 - hunydewprj] Launch error: Failed to connect to remote VM. Connection timed out.  

该应用程序在模拟器中运行良好 - 请帮助 - 我在这里缺少什么?任何提示/建议?谢谢

4

31 回答 31

69

如果应用程序在其清单文件中设置了 android.permission.SET_DEBUG_APP 权限,某些设备只会让调试器附加:

<manifest>
  <uses-permission android:name="android.permission.SET_DEBUG_APP"></uses-permission>
</manifest> 
于 2010-12-07T10:15:54.920 回答
54

如果您正在构建调试应用程序或在源代码中的某个位置(您调用 Debug.waitingForDebugger()),则会显示 Dialog Waiting for Debugger;

在 Android Studio 2.0 及以上版本中,有一个 Attach Debugger to Android Process 选项。它是运行菜单中的最后一个菜单项。

Android Studio 中运行菜单选项的屏幕截图

于 2016-09-13T11:20:40.000 回答
19

不确定这是否是您要查找的内容,但请尝试放置:

android:debuggable="true"

在应用程序标签中AndroidManifest.xml

于 2010-12-26T17:04:46.553 回答
10

如果我将 USB 电缆切换到我的 PC 上的不同端口,我会得到这个,奇怪但当我再次切换回来时它会起作用。此外,我认为当有另一个设备或模拟器同时运行,或者两个 Eclipse 实例打开时,我已经得到了这个。

于 2010-12-07T11:37:29.657 回答
10

我有这个问题很久了,当控制台和模拟器都显示等待连接到调试器时,我无法让我的 android 模拟器或设备连接到调试器。

之前在 Eclipse 中进行调试的配置也让我很困惑,但是今天,我通过以下步骤解决了这个问题:

例如,当您想调试一个 android 项目时,mypro。你可以在"Package Explorer". Then choose "Debug as"-->"Android Application".

然后模拟器可能会停在“等待连接到调试器”(或其他类似的东西)。

然后您需要自己连接到调试器,方法是单击“DDMS”打开 DDMS 透视图,然后单击“Devices”选项卡。

然后您可以看到在您的模拟器或设备上运行的进程列表。

双击你正在调试的那个,然后切换到 Debug 透视图,你可以看到调试器已经连接,你可以调试你的程序了。这就是我解决这个问题的方法。

顺便说一句,我的操作系统是 Win7 32 位。Eclipse 的版本是 Helios Service Release 2。Android SDK 是 rev。16 和平台工具的 10。

更新。

我发现这是我的 TCP/IP 配置的问题。当我分配静态 IP 地址(用于访问互联网)时,无法连接调试器。

所以每次调试器无法连接的时候,我总是做以下步骤:

1.关闭当前的eclipse窗口。

2.将IP地址的配置改为动态,即通过DHCP获取IP地址。

3.再次打开eclipse。

然后可以连接调试器。我认为这可能是使用套接字连接的 java 调试器的内部机制的问题。

于 2011-12-25T14:28:15.170 回答
4

对于那些在 4.2.2 中遇到这种烦人行为的人,您必须在开发人员选项中取消选中“等待调试器”的设置。当然,这些选项被谷歌隐藏了,你必须做一个鬼鬼祟祟的把戏才能让它们重新出现。我在它们消失之前设置了它们,我再也找不到它们了。

此页面解释了程序

于 2013-05-22T18:15:32.833 回答
3

我的解决方案是使用 Dalvik 调试监视器。有时,进程旁边会出现红色或绿色错误。单击您要加载到的设备。选择 Actions 选项卡并重置 adb。这通常会为我附加调试器。我发现通过这个 Monitor 进行调试比使用 Android Eclipse 插件 Logcat 更适合我。

于 2011-06-30T15:36:02.897 回答
3

运行 Android Studio,我遇到了这个问题,在尝试了各种补救措施后,重新启动 Android Studio 似乎可以解决这个问题。

于 2015-03-13T09:41:36.383 回答
2

我最终进入“调试”视角。

然后在“调试”框架中,有调试列表或运行列表。

您必须确定哪一个是您当前存在此问题的那个(等待调试...)

然后右键单击并选择“终止并删除”。

然后你尝试再次运行。那个警告框将消失。

于 2011-10-07T17:51:46.797 回答
2

关闭模拟器并关闭 Eclipse。重新打开 Eclipse 并启动模拟器对我有用。

要查找的关键内容是在 Eclipse 的“设备”窗格中。如果您启动模拟器或设备并且它显示在设备名称列表中但显示为 [null] 并且其下方没有显示正在运行的进程,那么它将无法正常加载您的应用程序。

如果设备的名称出现并且在线,那么事情似乎很顺利。

不知道为什么它总是不成功。

于 2012-05-18T20:54:43.907 回答
2

就我而言,问题是由 adb 与另一台设备连接引起的。

如果 PC 中连接了多个设备,请移除除所需设备之外的其他设备。

于 2015-08-18T08:41:45.900 回答
2

我以这种方式解决了这个问题:

转到运行菜单 ====> 单击编辑配置====>杂项,最后取消选中如果 APK 未更改则跳过安装选项

在此处输入图像描述

在此处输入图像描述

于 2016-10-28T17:07:56.233 回答
2

重新启动手机是我的解决方案。

于 2019-10-01T14:42:41.410 回答
1

如果您的开发环境是 Windows,请确保正确安装了 USB 驱动程序。

确保正确安装 USB 驱动程序的一种方法是获取 PDANet Windows 安装程序并让它安装 USB 驱动程序。

您可以在此处找到 PDANet 页面

于 2010-12-26T17:37:39.393 回答
1

我会尝试在没有 Eclipse 的情况下自行使用 ddms 连接到手机。您可能在 Eclipse 中运行了一个您看不到的模拟器,或者 Eclipse 存在其他一些问题。

只需从命令提示符运行 ddms 并查看设备是否出现并且您可以连接到它。

您还可以查看跑步时是否出现adb devices并查看您的手机是否已列出(可能还有其他内容..)

于 2010-12-31T18:33:40.453 回答
1

我遇到了同样的问题,我知道我没有运行任何其他实例,并且可以使用adb devices. 我刚刚重新启动了eclipse并且它起作用了。

于 2011-03-17T16:19:10.237 回答
1

重新启动 PC 是唯一对我有用的方法。当我在使用 Android 2.2 手机和 Android 3.1 平板电脑时遇到此问题时,它起作用了。

于 2012-02-01T06:33:15.000 回答
0

我今天遇到了这个问题。在花了一天的大部分时间试图修复它之后,唯一最终起作用的就是创建一个新的工作区并将我的项目导入其中。我希望这可以帮助某人避免我遇到的所有麻烦。

于 2011-03-15T20:47:47.427 回答
0

我有同样的问题,通过在调试配置中明确选择所需的设备来修复它。不幸的是,即使在调试器尝试连接时该日志有时也会停止。在这种情况下,在 DDMS 角度找到所需的过程。它将以绿色错误突出显示。单击停止,然后再次调试。

于 2012-01-26T11:45:38.353 回答
0

我也遇到了这个问题。在我的环境中,我使用 tomcat 作为服务器,使用 android 作为客户端。我发现,如果启动tomcat,这个错误“启动错误:无法连接到远程VM。连接超时。” 会发生。如果没有运行tomcat,adb 运行良好。

于 2012-05-19T14:33:09.443 回答
0

我尝试了上述所有解决方案,有时它可以解决问题,但我仍然不时碰巧遇到“等待调试器附加”消息框。

就我而言,最终的解决方案是拔下所有 Android 设备,但我想在其上进行调试。我不知道哪一个是罪魁祸首:运行 JB 4.2 的 Nexus 7、运行 ICS 的 HTC One X、运行 Gingerbread 的 HTC Desire S 或 3 的组合,但只要我只有一个设备插入,它像丝绸一样光滑。

于 2013-01-07T10:02:45.130 回答
0

我使用任务管理器杀死 adb.exe 来解决这个问题。adb.exe 被杀死后会自动启动。

到目前为止,杀死 adb.exe 已经为我解决了很多与调试和仿真器相关的问题。

于 2013-11-07T13:37:58.403 回答
0

对于Android Studio用户,我在更新我的jdk 位置后第一次尝试运行一个裸骨项目时遇到了这个问题。所以我偶然发现了这篇文章。在我的例子中,简单的Build->Clean Project完成了这项工作。

于 2014-07-14T14:15:05.307 回答
0

我在使用 Android Studio 和 GenyMotion 时也遇到了同样的问题。我可以通过暂停程序并在显示“等待调试器”消息后再次恢复来解决此问题。它也可以在使用其他 IDE 和仿真器时工作。在此处输入图像描述

于 2015-04-08T18:17:17.653 回答
0

Mac OS 10.10 上的 Android Studio 1.2.2 与其他人报告的问题相同。我关闭了 Android Studio,然后从终端中的命令行检查:

ps -efw|grep -i 安卓

这报告了一个与 Android Studio 关联的 java 进程 (.gradle/daemon)。我杀死了这个进程,重新启动了 Android Studio,问题就消失了。

于 2015-06-18T19:33:01.020 回答
0

禁用手机中的开发人员选项。

设置 > 开发者选项 > 禁用

当我尝试在不调试的情况下使用我的应用程序时,这对我有用。

于 2015-07-28T08:20:15.807 回答
0

为我解决问题的方法是:“运行”->“将调试器附加到 Android 进程”,然后选择您的进程。

您可以在 Android Studio 中执行此操作。

于 2015-09-01T17:38:32.067 回答
0

这可能是旧的,但对于 Genymotion 的最新更新 2.7.1,请转到 开发人员选项,如果您不知道如何打开该选项,请转到关于手机并单击内部版本几次,开发人员选项将被启用。打开开发者选项,检查USB调试

在 Genymotion 4.4 及更高版本上测试。奇怪的解决方案是吗?但绝对有效。希望能帮助到你。快乐的编码。

于 2016-07-13T05:36:37.603 回答
0

在调试模式下,Android Studio 通过 socket(:8600) 连接到您的设备。不知何故,您的套接字连接被阻塞,因此无法响应传入的连接。

重启Android Studio,你的问题就解决了

于 2016-09-03T06:02:41.890 回答
0

开发人员选项中的“等待调试器”可能已设置为等待您的应用程序。请清除该选项,应用程序应该可以正常运行。

于 2017-06-13T06:12:58.200 回答
-1

已经阅读了很多关于此的内容,唯一对我有用的解决方案是创建一个新项目,然后将旧项目复制回其中。

于 2017-05-11T16:18:23.947 回答