断点没有在Android Studio中受到影响

时间:2014-10-17 10:49:22

标签: android intellij-idea gradle android-studio android-gradle

我正在使用Windows 7并且最近已从Eclipse切换到Android Studio。我现在无法调试。

运行Android Studio 0.8.6,我设置了一个完全默认的安装,我使用新项目向导创建了一个默认的空项目,目标是ICS SDK。然后我在onCreate中放置一个断点,单击调试按钮并运行。

连接调试器,因为我可以在调试器窗口中看到“连接到目标VM”消息。

我知道代码正在执行,因为我正在更新UI中的一些文本以显示此内容。

我曾尝试在许多地方设置断点,但没有一个被击中。

我把头发拉到这里,因为我看不出我做错了什么。我是新手,因此我认为gradle中可能存在一些我应该更改的设置,但是使用向导构建的绝对标准项目肯定会让我遇到断点?

我注意到的一件事是在我的build.gradle文件中没有提到调试版本,只提供了一个版本。我想知道这可能是问题吗?

buildTypes {
    release {
        runProguard false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

请注意。我在我自己的设备和模拟器上试过这个

更新:

我更改了View Breakpoints选项中的设置以打开“Java Exception Breakpoints”,但仅限于未捕获的异常。然后,在onCreate结束时,我故意造成NullPointerException。当我现在在调试中运行时,我仍然没有点击我的实际代码并且没有在源代码上看到代码中断,但程序确实暂停。我知道这是我的NullPointerException导致这种情况,因为当我删除它时,我可以看到代码继续并且不会中断。

在我的代码中断调试窗口时,我在“主”线程中,在一个名为“performLaunchActivity”的函数中。我看不到比这更多的信息了。因此,我可能正在通过调用performLaunchActivity的任何级别的代码进行调试,但是我的源代码被视为无法单步执行它?

3 个答案:

答案 0 :(得分:11)

尝试在minifyEnabled true部分删除文件\app\build.gradle中的行buildTypes - debug。或者使用此屏幕并将Minify Enabled设置为false

How to enable debugging

答案 1 :(得分:4)

确保您的JDK是最新的,并且您的系统只包含一个JDK。

答案 2 :(得分:0)

gradle部分完全正常。我有相同的代码,他的调试工作正常。 你是如何设置断点的?您只需单击代码窗口的最左侧,就会出现一个红色的球。

参考:https://developer.android.com/sdk/installing/studio-debug.html