在 Android Studio 中确定命中断点处的变量值

Determine value of variables at hit breakpoint in Android Studio

...
BREAKPOINT `int i = 10 + 12;`
...

当我如上所述在 Android Studio 中向代码添加断点时,AS 将 运行 我添加断点的行,如预期的那样。但是,如果在断点行之后没有代码,我将无法在调试器中看到 i 解析的内容。我可以通过插入一行虚拟代码来解决这个问题,但是必须有一个 easier/more 优雅的方法来解决我所缺少的这个问题。

如何避免添加虚拟代码行来查看这些值?

编辑:我使用的是最新版本的 Android Studio (1.0.2)

可以在要执行的最后一行之后的行上放置断点。

断点在执行断点下的行之前停止执行。

在上面的例子中,引入了一个新变量(i),解释器还不知道它。必须跳过(执行)代码行才能初始化此变量。

参见下面的示例,其中有一个测试函数包含问题中的代码行:

我在函数 { 的开始大括号、相关行和结束大括号 } 上放置了断点。请注意,第一个断点处有一个 X,因为它是无效的。当前执行点在深蓝色高亮线上(或刚好在执行之前)。注意下面的变量window中不存在变量i

当我越过(执行)代码行时,活动行现在越过函数 } 的最后一个大括号,变量 i 现在已初始化并设置:

因此,如果您有兴趣在给定代码行 之后中断,只需将断点放在该行代码 之后 ,即使该行是函数的最后一个大括号。

注意:如果有一个退出语句(例如 breakreturn 等)作为函数中最后执行的代码行,这将不起作用。