Android Studio断点交叉解释

Android Studio断点交叉解释,android,debugging,intellij-idea,android-studio,Android,Debugging,Intellij Idea,Android Studio,我正在Android Studio中使用断点调试我的Android项目 我注意到有时我的断点中有一个十字,不会暂停执行 在intellij站点上,这被解释为:“当断点被设置在注释行或非可执行行上时,表明该断点不会被命中。” 有谁能告诉我上述摘要如何解释以下断点的行为: 为什么第二个断点有记号?我糊涂了 这通常是因为连接设备上的代码与屏幕上的代码不同 换言之,调试器根据代码上的行号“知道”断点的位置,因此您可能添加了几行代码,从而将行位置向下移动了几行 超级简单的修复方法是编译代码并在设备上再次

我正在Android Studio中使用断点调试我的Android项目

我注意到有时我的断点中有一个十字,不会暂停执行

在intellij站点上,这被解释为:“当断点被设置在注释行或非可执行行上时,表明该断点不会被命中。”

有谁能告诉我上述摘要如何解释以下断点的行为:


为什么第二个断点有记号?我糊涂了

这通常是因为连接设备上的代码与屏幕上的代码不同

换言之,调试器根据代码上的行号“知道”断点的位置,因此您可能添加了几行代码,从而将行位置向下移动了几行


超级简单的修复方法是编译代码并在设备上再次闪存。

此解释不适用于您的
Log.i()
语句。如果Android Studio认为代码行是注释行,则可能是其自身的一个bug。答案是100%正确的,只需确保在gradle文件中,您已将minifyEnabled设置为false。像
buildTypes{debug{minifyEnabled false}}
在我的例子中,即使在调试设置中,我也有minifyEnabled true,因此断点被交叉,一个没有帮助的工具提示只是说“行号不可用”。我可以猜到它和minify有关,但如果我不知道JS代码的minify,我永远也不会明白:)