使用Eclipse进行Androiddebugging – 无断点

我试图在emulator或者设备上debugging一个简单的Android应用程序,而且我不能让debugging器在我设置的任何断点处停下来。 我已经在这里和整个networking结合其他职位,并尝试所有的build议(添加debuggable:清单,“停止和启动adb,全部清除,确保我使用debuggingbutton,而不是运行button等等) 。 在Debug透视图中,我可以看到线程,并在DDMS中显示我正在debugging的设备旁边的debugging图标。 我确实看到了设置断点的蓝点,Debug透视图列出了它们,并表示它们处于活动状态。

我已经在断点之前发出警报来validation代码是否正在执行。

开始在这里疯狂。 还有其他build议吗? 我必须错过简单但不明显的事情。

更新:我很欣赏到目前为止的回应。 不幸的是他们还没有解决我的问题。 我已经按照debugging说明进行了debugging,并打开了debugging电话。 另外,我在启动时看到电话上的“等待debugging器”警报。 一般来说,一切都说我正在debugging(包括我已经添加logcat输出)。 它只是不会停在我添加的断点上,并且在“debugging”透视图中的断点选项卡中列出。 也只是为了重申 – 在设备上以及在仿真器上进行debugging时会发生这种情况。 我注意到的一件事是,当我启动debugging器,我已经设置启动Android设备select器。 在那里,“debugging”列对于我的设备是空白的,但是如果仿真器正在运行,那么debugging列确实会显示“是”。 此外控制台正在尝试连接到debugging器。 是否应该有一个控制台日志,指出debugging器成功连接? 我没有看到这个。

更新20120914:我已经离开了一段时间,并放弃了以前。 回去尝试解决这个问题。 它仍然没有解决。 以上所有内容仍然是最新的 – 但我注意到的另外一件事情。 我在主要活动上设置了一个类加载断点,并且在那里停止。 它只是不停止在任何线路断点。 我刚更新到最新的JDK 1.7.0_07,Android SDK 20,ADT Plugin 20.0.3。 我已经使用logcat输出消息,并在这一行上设置断点。 我看到logcat中的消息,所以我知道代码正在执行。 在debig透视图中的debugging窗口也显示android应用程序下面有许multithreading,DDMS透视图中的Devices窗口显示应用程序旁边有绿色的bug图标。

还有一件事 – 当debugging器运行时,行断点符号不会覆盖它们(类加载断点!)。 我猜这是根本原因 – 但我不知道为什么他们没有得到这个。 (顺便说一下,忽略breakouts也没有设置 – 断点没有通过它们的行)。

任何新的build议,将不胜感激。 我已经烧了很多时间。 这一定是明显的,我没有看到。

Solutions Collecting From Web of "使用Eclipse进行Androiddebugging – 无断点"

现在,我觉得写这篇文章有点愚蠢。 但是我终于解决了我的问题。 问题是你不能在Javascript代码中设置断点。 我无意中遗漏的部分是我正在使用PhoneGap为Android写一个应用程序。 几乎所有的代码都是Javascript。 我很习惯在Visual Studio中开发.NET Web应用程序我只是假设你可以在JavaScript代码中设置断点。 Java代码中的断点正常工作。 无论如何,谢谢你的任何build议。 不知道是否有其他.NET开发人员尝试PhoneGap开发 – 但也许这个职位将帮助他们。

Android SDK提供了大部分debugging应用程序所需的工具。 此链接将向您介绍Androiddebugging环境和使用的debugging工具 。

这里还有一个关于debuggingandroid应用程序的教程。

如果您想使用实际的android手机进行debugging ,请打开设备中的“ USBdebugging ”:

设置>应用程序>开发并启用USBdebugging

Android 4.0:

设置>开发者选项

并利用Log.d和你的Logcat

Eclipse有一个debugging运行configuration。 只有在使用debugging运行configuration时,debugging器才会在启动过程中与应用程序连接。

应用程序启动(在设备/仿真器上)暂停了一段时间“等待debugging器”? 如果没有,那么你不使用“debuggingconfiguration”启动应用程序。 它的button到运行(下拉)configuration的左侧。

尝试jsHybugger: http : //www.jshybugger.org/用于在Eclipse中为远程(移动)设备设置javascript断点。

它可以让你设置断点,单步,捕捉exception,并与JS / DOM环境进行交互。 您可以从Eclipse或从远程桌面上的兼容Chrome或Chrome的debugging器中使用它。 它可以与创build自己的webView的应用程序一起使用。

但是,您必须安装一些文件,但使用起来可能并不复杂。 它广泛地修改JS文件(dynamic的,透明的给用户),以启用所有这些debugging – webKit真的应该支持本地javascriptdebugging。

确保你没有检查跳过所有断点(运行 – >跳过所有断点)。

Ribo已经在他的回答中提到了它,但是因为这个问题和答案是关于debuggingPhonegap应用程序的。 你一定要看看Weinre(WEb INspector REmote)。 http://people.apache.org/~pmuellr/weinre/docs/latest/

现在phonegap甚至有它自己的weinre拥抱在phonegapbuild立… http://debug.phonegap.com/

我是这个的忠实粉丝…(注意,如果你在你的本地机器上使用weinre,并试图通过wifidebuggingphonegap应用程序…确保你的本地设备是在同一个wifinetworking!)