你所不知道的Android Studio调试技巧【转】 (5)

你所不知道的Android Studio调试技巧【转】

在弹出的控制面板中,选中Log evaluated expression,然后再填写想要输出的日志信息,如下:

你所不知道的Android Studio调试技巧【转】

当调试过程遇到该断点将会输出结果,如下:

你所不知道的Android Studio调试技巧【转】

异常断点

所谓的异常断点就是在调试过程中,一旦发生异常(可以指定某类异常),则会立刻定位到异常抛出的地方。比如在调试异常中,我们非常关注运行时异常,希望在产生任何运行异常时及时定位,那么此时就可以利用该类型异常,在上线之前,进行异常断点调试非常有利于减少正式环境中发生crash的几率。

具体操作如下:在Run菜单项中,选择View Breakpoints(也可以在断点管理面板中点击),如下:

你所不知道的Android Studio调试技巧【转】


你所不知道的Android Studio调试技巧【转】


在管理断点面板中,点击+

你所不知道的Android Studio调试技巧【转】


在弹出的下拉选择列表中,我们选择Java Exception Breakpoints

你所不知道的Android Studio调试技巧【转】

这里我们选中Search By Name,在下面的输入框中输入我们所关心的异常类型。此处我们关心NullPointerException,在调试过程一旦发生NullPointerException,调试器就会定位到异常发生处。

你所不知道的Android Studio调试技巧【转】

方法断点

你所不知道的Android Studio调试技巧【转】


Filed WatchPoint

你所不知道的Android Studio调试技巧【转】

Filed WatchPoint是本质上是一种特殊的断点,也称为属性断点:当我们某个字段值被修改的时候,程序暂停在修改处。通常在调试多线程时尤为可用,能帮我们及时的定位并发错误的问题。其使用和添加普通的断点并无不同,断点图标稍有不同

调试的两种方式
到目前,调试的相关基础我们已经介绍完了,但是不少童鞋对Android Studio中

你所不知道的Android Studio调试技巧【转】

这两个按钮感到困惑:Debug和Attach process。
这里我们就简单介绍一下这两者的区别:

Debug:以调试模式安装运行,断点可以在运行之前设置,也可在运行后设置,是多数人最常用的调式方式

Attach process:和Debug方式相比,能够将调试器attach到任何正在运行的进程。比如,我们可以通过attach process到想要调试的进程。然后,在需要的地方设置相关断点即可。

在具体调试过程,自行酌情选择即可。后面,我会带大家一步一步调试Android的Framework相关的源码,参见:
自己动手编译最新Android源码及SDK及自己动手调试Android源码

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgwppw.html