我是Android框架的新手(使用Eclipse),我有一个关于调试的问题。最近我在一项活动中犯了这个错误:
// The installation button
Button button = (Button) findViewById(R.id.preparationInstallButtonID);
button.setOnClickListener(this);
setContentView(R.layout.preparation);
即。我尝试在渲染布局之前添加onclick事件。这使程序崩溃了,“抱歉,应用程序xxx意外停止了”。再次运行它,使用调试模式,Eclipse打开一个包含“Thread< 3>(Suspended)”等的Debug-window(我确定你知道我在说哪个窗口)。
现在,我如何在这里提取有用的数据?关于上面的问题,我找到了如何通过反复试验来修复它,但是假设我无法进行反复试验,调试窗口如何帮助我找到错误的来源?它说“异常RuntimeException”,但我没有看到任何关于我的代码中发生异常的指针。
答案 0 :(得分:3)
如果你想调试: 右键单击您想要调试的部分代码(在行号)。选择Toggle Breakpoint。
您可以在行号旁边看到小圆圈,即断点。
然后,进行运行配置,单击运行图标旁边的小箭头,然后单击“运行配置..”
单击android应用程序,您将看到此对话框窗口:
阅读它,“突出显示”这个:'按新按钮创建所选类型的配置'。单击选项卡上方的“新建”按钮,您将看到此对话框:
填写它,浏览你的项目,
例如,我添加了Scrumptious项目,并启动默认活动。单击Target选项卡,选择Your emulator。如果要在物理设备上运行,请单击“始终提示选择设备”。我这次在物理设备上运行,
用于“公共”选项卡,如果可能您要在“收藏夹”菜单中选中“调试”或“运行”选项。这是可选的。点击“应用”。
单击调试图标 - 然后选择您的项目。如果在“收藏夹”菜单中的“显示”上激活“调试”,项目将显示在调试选项菜单中。
我选择“始终提示选择设备”,此对话框将会显示。我想在物理设备上运行,因此我在“选择正在运行的Android设备”中单击该设备,然后单击“确定”。您也可以在模拟器上运行。只需单击您的模拟器,然后单击“确定”。
如果eclipse确认开放视角,请选择是
然后,如果您想知道变量的值是什么,只需将鼠标放在变量的实例上,或者您可以在Debug透视图中浏览'Variables'窗口。
答案 1 :(得分:2)
使用LogCat,它将为您提供错误消息以及您的testdevice / emulator中发生的所有其他信息。
窗口 - >显示视图 - >其他 - > logcat的
答案 2 :(得分:1)
我强烈推荐这个关于调试的教程。
http://www.vogella.com/articles/EclipseDebugging/article.html
它将引导您完成Eclipse在该部门提供的所有功能,非常值得花时间。
就可能有帮助的特殊技巧而言,设置断点可能是有用的(即,点击代码的左边距以显示其中一个蓝色针脚)。然后,当在调试中运行时,您可以停止在附近发生问题,然后前进,逐步击败,使用“步入”,“前进”和“步骤返回”命令调试窗口的顶部。当你以这种方式踩着代码时,你可能会打开变量窗口,这样你就可以看到它们应该以什么方式设置,等等。
或者,你可以在RuntimeException上设置一个断点(即使是一个被捕获的断点),通过点击debug中的Breakpoints窗口,然后舔“J!”按钮(鼠标悬停文本显示“添加Java异常断点”。
调试视图也可以让你做其他很酷的事情,比如:
同样,我推荐上面引用的教程。欢迎来到精彩的调试世界。