在为Android开发时,如何在AsyncTask中使用Eclipse调试器?

时间:2011-01-22 21:07:54

标签: android eclipse debugging android-asynctask adt

我在Eclipse中运行ADT(Android开发工具)并通过在MainMenu.oncreate (class Activity)中放置一个断点来验证我的调试器正在运行。但是,当我把它放在AsyncTask.doInBackground的第一行时,它永远不会碰到它。我知道它正在运行,因为我在AsyncTask中放了一个Log语句,它出现在LogCat中。任何帮助将不胜感激,因为我更喜欢调试器而不是日志记录。

我的版本:

Eclipse SDK Version: 3.6.1  
Build id: M20100909-0800

alt text

2 个答案:

答案 0 :(得分:69)

将以下代码片段放在doInBackground的开头:

android.os.Debug.waitForDebugger();

然后当你在该线程中设置断点时,eclipse会找到它。

答案 1 :(得分:9)

除了sargas的答案,因为在运行模式下,如果您忘记评论该行,可能会收到错误,您可以使用以下内容:

if(android.os.Debug.isDebuggerConnected())
    android.os.Debug.waitForDebugger();

所以它会照顾好自己。