欢迎来到天天文库
浏览记录
ID:38730955
大小:526.36 KB
页数:13页
时间:2019-06-18
《Android 开发之Eclipse Debug调试详解》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Android开发之EclipseDebug调试详解 1.在程序中添加一个断点 如果所示:在Eclipse中添加了一个程序断点 在Eclipse中一共有三种添加断点的方法 第一种:在红框区域右键出现菜单后点击第一项ToggleBreakpoint将会在你右键代码的哪一行添加一个程序断点(同样的操作方可取消程序断点) 第二种:在红框区域双击鼠标左键将会在你双击代码的哪一行添加一个程序断点(同样的操作方可取消程序断点) 第三种:在光标停留的地方使用快捷键Ctrl+Shift+B将会在光标停留的这一行添加一个程序断点(同样的操作方可取消程序断
2、点) 2.运行Debug调试让程序停留在添加的断点上 如下图所示,在红框内点击下拉菜单选中需要调试的项目则开始运行Debug调试 如果不在下拉表中选直接点击表示Debug运行默认项目(默认项目为上一次运行的项目) Debug调试快捷键为单击F11 分析一下如何科学的添加程序断点,上图中我为了加断点查看生成出来随机数的值我一共添加了6个程序断点,绿框表示最为科学的断点位置,红框表示不科学的位置。我们分析一下为什么,如果switchcase中的代码片段过长或者case的数量过多如果采用红框的方式来添加程序断点,程序员须要添加很多程序断点万一有
3、疏漏所以会很难快速定位代码执行到了那里,如果使用绿框的方式添加程序断点,程序员只须要在断点出按F6单步跳过这一行代码就会走进正确的case中方便继续调试。 Debug调试运行后,程序停在了红框处,按F6单步跳过发现随机数为4程序停留在了绿框中,程序员可以迅速定位random的值为4 3.程序停留后查看变量的数值 蓝框中的内容表示为断点的入口方法,就好比你的断点是从那个方法进来的,学会看这个真的非常重要,好比我现在明确知道我的一个方法在被调用的时候方法中会出现错误,但是这个方法在程序中100个地方都在调用,我可能断定实在那里调用的时候出的错误,我不可
4、能在100个调用它的地方都加一个断点,我可以在方法中添加程序断点然后在篮框中查看程序是从那个地方走进这个方法的,便可以快速定位问题所在。 绿框中可以查看当前方法中所有变量的值,但是如果变量非常多在这里看就比较麻烦,可以使用红框的方法查看。 红框中可以右键变量名点击咖啡框中的watch后在紫框中Expressions就可以看到变量的数值了。 BreakPoints中会记录程序中添加过多少程序断点。 4分享一些Eclipse中Debug的一些小技巧 watch过的变量和我们自己加的程序断点不会被Eclipse自动删除除非我们手动删除否则会一直留在紫框
5、中,这些数值会拖慢Eclipse开发工具,如果过多的话很可能会造成Eclipse崩溃(有可能是Eclipse的BUG),让开发变得非常痛苦,所以雨松MOMO在这里建议大家在每次Debug调试的时候将紫框中之前加的程序断点和watch过的变量全不手动清空,只添加这一次调试须要的断点就可以了,这样的话Eclipse就不会被这些拖慢进程的东西所导致崩溃。 5.连接真机调试 第一步打开自己的手机在设置中选择应用程序然后选择开发然后选中USB调试。 第二步用USB线连接手机到电脑,一般情况会自动安装驱动,如果无法安装驱动的话就去下载一个豌豆荚或者91助手,让它帮我们
6、手机自动安装驱动很方便的。 第三步驱动安装成功后会在Device中看到真机(红框中)绿框中为android电脑模拟器 . 运行项目后弹出设备选择窗口第一个为模拟器第二个红框内的为我连接电脑的真机MOTO的里程碑,选择完后点击OK就可以通过真机来调试程序了,简单吧?是不是很给力呢呵呵。 6.Android开发中Log信息的打印 本人做过J2ME开发Android开发iPhone开发发现J2ME的模拟器还有Iphone的模拟器都非常给力速度很很快(模拟器比真机快)唯独android的模拟器是最不给力的(真机比模拟器快)实在是慢的不行连接上真机可以快一
7、点但是一样还是慢尤其是Debug的时候简直是太不给力了(发点牢骚大家别介意哦。所以有时候我在开发Android的时候不到万不得已我不去Debug我会使用Log去打印我须要的数据下面我教大家如何在Andoid下打印Log信息。希望大家都学会使用log. 常用的Log有5个:Log.v()Log.d()Log.i()Log.w()Log.e()。 根据首字母对应VERBOSE,DEBUG,INFO,WARN,ERROR。 以上这些Log系统都会打印出来。 打开LogCat页面发现系统打印了很多Log信息我们不好定位出刚才自己打的Log,如图所示点击红框
此文档下载收益归作者所有