0 Comments

调试程序(1)

发布于:2012-11-19  |   作者:广州网站建设  |   已聚集:人围观
调试程序(1)

在Eclipse开发工具中调试程序的方法很多,例如,可以在ADT插件提供的DDMS(Dalvik Debug Monitor Service)透视图中查看进程状态;在LogCat视图中查看系统输出的调试信息以及自己使用Log类的相应方法输出的调试信息;在代码中设置断点进行跟踪。甚至还可以用DDMS透视图中带的工具进行更高级的调试,例如,可以对设备截屏,针对特定的进程查看正在运行的线程以及堆信息、广播状态信息、模拟电话呼叫、发送短信和地理坐标等。下面我们将详细介绍这些常用的调试程序的方法,并利用这些方法来调试前面编写的绘制随机实心圆的程序。广州网站设计

首先来看看如何使用DDMS透视图。在默认情况下,Eclipse的主界面并没有显示DDMS透视图。读者需要选择"Window" > "Open Perspective" > "DDMS"菜单项来显示DDMS透视图。如果在"Open Perspective"菜单项中没有"DDMS"子菜单项,就选择"Window" > "Open Perspective" > "Other"菜单项,打开"Open Perspective"对话框,在列表中选中"DDMS"列表项,如图2.20所示。最后单击"OK"按钮关闭对话框。在完成前面的操作后,会在Eclipse主界面的右上角看到"DDMS"开关状态按钮。如果没有"DDMS"按钮,可以单击右侧的">>"按钮显示其他未显示的按钮,找到"DDMS"按钮,选中即可,如图2.21所示。广州网站设计

图2.20  选择"DDMS"透视图
图2.21  打开"DDMS"透视图
进入"DDMS"透视图后,可看到如图2.22所示的界面。在"DDMS"透视图中有很多视图,其中最常用的是"LogCat"视图。在该视图中可以显示系统或用户输出的调试信息。除此之外,在"Devices"视图右侧的菜单中提供了更多的调试功能。这些功能如下:
(点击查看大图)图2.22  DDMS透视图的主界面

Debug Process(调试进程)。

Update Heap(更新堆)。

Dump HPROF file(转存HPROF文件)。

Cause GC(引起垃圾回收)。

Update Threads(更新进程)。

Start Method Profiling(开发方法执行分布图)。此功能可以分析程序中方法的执行情况。广州网站建设

首先应在如图2.22所示的"Devices"视图列表中选择要监视的进程,然后选择"Start Method Profiling",该菜单项会变成"Stop Method Profiling",过一段时间后,再选择"Stop Method Profiling"菜单项,就会弹出如图2.23所示的界面,在该界面中会显示所监视的进程中方法的执行时间分布情况。

Stop Process(停止进程)。

Screen Capture(屏幕截图)。广州网站建设

Reset adb(重启Android Debug Bridge)。如果adb调试桥运行不稳定(据笔者测试,adb在运行一段时间后,有可能出现停止、无法上网等情况),可以选择"Reset adb"来重新启动"adb.exe"进程。

在熟悉完"DDMS"透视图后,我们就可以利用"DDMS"透视图进行调试了。在"DDMS"透视图中最常用的是"LogCat"视图。通过该视图可以查看系统及开发人员输出的调试信息。

(点击查看大图)图2.23  方法的执行分布图

如果想通过Java代码在"LogCat"视图中输出相应的调试信息,需要使用到android.util.Log类中的5个静态的方法,这5个静态方法如下:

Log.v(String tag, String msg);

Log.d(String tag, String msg);

Log.i(String tag, String msg);

Log.w(String tag, String msg);

Log.e(String tag, String msg)。

飞机