我需要调试我的应用程序,调试runnable中的代码,然后在应用程序中执行一些操作然后再次调试代码,但是我无法执行,我无法执行任何操作,调试立即点燃。
代码:
public class UpdateHandler {
public static Handler getHandler() {
if (sHandler == null) {
HandlerThread looper = new HandlerThread("update Handler");
looper.start();
sHandler = new Handler(looper.getLooper());
}
return sHandler;
}
}
UpdateHandler.getHandler().post(new Runnable() {
@Override
public void run() {
update();
}
});
public void update() {
// i put the debug point here .
}
答案 0 :(得分:6)
对于runnables / async任务等,调用Debug.waitForDebugger()
,之前设置断点的代码非常有用:
...
Debug.waitForDebugger();
foo.bar(); # breakpoint on this line
...