1、条件断点
在进行代码调试时,如果碰到循环,但是只需要在某种情况下才需要断,例如for循环 i=6 时,这个时候使用条件断点,可以很方便的实现。
条件断点的实现也很简单,只需在普通断点上单击鼠标右键,弹出下面的菜单(记住界面左下角那个快捷键,可以打开Breakpoints界面,后面会用到):
然后在condition里面写上 i=6 的条件即可,debug时就会只在符合条件时,才会进入断点。
2、异常断点
程序出现崩溃,比如报NullPointerException等异常,通常情况是先复现问题,再抓log,打断点分析异常等,实际上不必这么麻烦,AndroidStudio提供了自动捕获异常的功能,就是异常断点功能。开发者不必自己去可能出现异常的地方打断点。只需打开breakpoints界面进行相关操作即可。
依次点击工具栏的Run—->View Breakpoints…即可打开breakpoints界面(或则使用前面提到的那个快捷键):
点击左上角的“+”。选择JavaException Breakpoints,然后选择NullPointerException即可。
这样开发者就不用自己去打断点,直接Debug运行就可,系统会自动在出现NullPointerException异常的地方停顿并打上断点。如图:
3、其他断点
在Breakpoints界面,还有很多功能,比如
日志断点:选择Evaluate and log:可以在下面输入框里面输入log日志信息,在debug时,这些日志信息就会被打出。这样就不用在代码里面写log,省去再编译运行的烦恼。
临时断点:将光标移到断点所在行,选择Remove once hit:(或则直接使用快捷键,我的是ctrl+Shift+Alt+F8),断点上就会出现一个“1”,这就是临时断点,执行一次断点会自动消失。