我正在尝试在模拟器或设备上调试一个简单的 Android 应用程序,但我无法让调试器在我设置的任何断点处停止。我在这里和整个网络上合并了其他帖子并尝试了所有建议(将 debuggable:"true" 添加到清单中,停止并启动 adb,全部清除,确保我使用的是调试按钮而不是运行按钮等) . 在 Debug 透视图中,我可以看到线程,在 DDMS 中,它会在我正在调试的设备旁边显示调试图标。我确实看到了我设置断点的蓝点,并且 Debug 透视图列出了它们并说它们处于活动状态。
我已经在断点之前发出警报,以验证代码正在执行。
在这里开始发疯。还有其他建议吗?我一定错过了一些简单但不明显的东西。
更新:我很欣赏迄今为止的回应。不幸的是,他们没有解决我的问题。我已按照调试说明进行操作,并在手机中打开了调试功能。此外,我确实在启动时在手机上看到了“等待调试器”警报。一般来说,一切都说我正在调试(包括获取我添加的 logcat 输出)。它不会在我添加的断点处停止,并在 Debug 透视图的断点选项卡中列出。也只是重申一下-在设备和模拟器上进行调试时会发生这种情况。我确实注意到的一件事是,当我启动调试器时,我将其设置为调出 Android 设备选择器。在那里,我的设备的“调试”列是空白的 - 但如果模拟器正在运行,调试列会说“是”。控制台还指出正在尝试连接到调试器。是否应该有一个控制台日志表明调试器已成功连接?我没有看到这一点。
更新 20120914:我已经离开了一段时间并且之前已经放弃了。回来尝试解决这个问题。它仍然没有解决。上面的一切仍然是最新的——但我注意到了另一件事。我在主要活动上设置了一个类加载断点,它确实停在那里。它只是不会在任何断点处停止。我刚刚更新到最新的JDK 1.7.0_07、Android SDK 20、ADT Plugin 20.0.3。我已经使用 logcat 输出了一条消息并在这一行设置了一个断点。我在 logcat 中看到了消息,所以我知道代码正在执行。debig 透视图中的调试窗口也确实显示了带有许多线程的 android 应用程序,而 DDMS 透视图中的 Devices 窗口显示了旁边带有绿色错误图标的应用程序。
还有一件事 - 当调试器运行行断点项目符号时,不会在它们上面覆盖复选标记(类加载断点会!)。我猜这是根本原因——但我不知道他们为什么没有得到这个。(顺便说一下,也没有设置跳过断点 - 断点没有穿过它们的线)。
任何新的建议将不胜感激。我在这件事上花了很多时间。这一定是我没有看到的明显的东西。