由于本视频在上传后学院会对其进行转码,而转码后视频质量严重下降,导致花屏、马赛克、画面停滞等等问题,因此在学院解决这个问题之前这里会提供原视频下载,视频不大,每个视频20M左右,下载地址:http://pan.baidu.com/s/1eQAdWyu
打断点
- 行号上双击,再次双击删除
- Ctrl + Shift + B
调试运行
调试运行 F11(正常运行 Ctrl + F11)
单步执行
即一次只执行一条语句,单步执行有3种方式:
1、
单步跳入 F5 跟踪进入函数内部
2、
单步跳过 F6 将函数调用作为一条语句
3、
单步返回 F7 运行完函数体剩余的语句,并返回函数调用处
对于执行非函数语句,按F5 和 F6 的效果是一样的。
分段执行
1、Run-->Run to line (运行至行) Ctrl + R 运行至光标所在行
2、
继续 F8 运行至下一个断点,如果没有则运行到结束
停止调试
1、
断开链接,程序继续运行(这个可能是Android程序下才可用)
2、停止进程
3、
Terminate 结束 Ctrl + F2,Android下这个好像不可用,普通Java项目可用,与Disconnect不同的是,Terminate是结束进程,程序不再执行,而Disconnect程序继续执行。
Watch命令
用于查看指定的变量的值
Log类
- 代替syso
- 可以输出堆栈信息
- 可以为不同等级的信息输出不同的颜色
- 封装Log类
使用Android Lint
类似Eclipse的代码检查
课程补充清除所有断点
有时候程序里在多个类中存在一些过时的不需要使用的断点,如果手动的去找到这些断点并删除这有点浪费时间,可以使用清除所有断点的功能,有两种方式如下:
1. 执行菜单:Run --> Remove All Breadkpoints
2. 在Debug透视图中清除,如下:
Log
在代码中我们会经常捕捉异常,而捕捉到的异常可以用Log进行输出,如下:
try {
// 代码
// ...
} catch (Exceptione) {
// e.printStackTrace(); //不推荐
Logger.e(TAG,"异常描述",e); //推荐
}
Watch命令
Watch命令准确的说应该是用于观查表达式的值,而一个变量也可以是一个表达式,如if语句其中的一种格式为:
if (表达式) {
}
所以:
boolean ok = true;
if (ok) {
// TODO
}
这是没问题的,说明一个变量ok也是一个表达式,因此Watch命令可以观察类似如下一些表达式:
- age
- mPerson.name
- mPerson.name.firstName
- mPerson.getName()
- “abc” + “ggg”
- 5 + 6 + a + b
Watch可以同时观看多个表达式
移除Watch
在表达式上右击,选择相应的命令,如下: