我正在使用 Android Studio 2.1.3 和 gradle 开发一个 Android 应用程序。
问题在于,简单方法中的断点永远不会被命中,尽管在应用程序调试期间必须满足条件,因此必须命中断点。
首先,我认为这个问题与这个问题的答案中描述的问题有关:
使用 gradle 构建库项目时,BuildConfig.DEBUG 始终为 false
为了测试这一点,我删除了库项目并将所有源代码集成到主应用程序模块中。它什么也没解决。 需要注意的是,以下是 build.gradle,其中 minify 对于 debug/release 都设置为 false:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.mycompany.mymobileapp"
minSdkVersion 21
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
debuggable true
jniDebuggable true
renderscriptDebuggable true
zipAlignEnabled false
}
debug {
debuggable true
minifyEnabled false
zipAlignEnabled false
jniDebuggable true
renderscriptDebuggable true
}
}
productFlavors {
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:2.0.5-beta'
testCompile 'com.android.support:support-v4:23.1.1'
testCompile 'org.powermock:powermock-api-mockito:1.6.2'
testCompile 'org.powermock:powermock-module-junit4-rule-agent:1.6.2'
testCompile 'org.powermock:powermock-module-junit4-rule:1.6.2'
testCompile 'org.powermock:powermock-module-junit4:1.6.2'
compile 'com.android.support:appcompat-v7:23.1.1'
}
这是 Android Studio 向我展示的屏幕截图:
这也不是唯一的案例。编译器在单步执行时,会完全跳转到代码的另一部分,而不是正在调试的部分。
这里有什么合理的解释吗? 暂停:尝试了“线程”和“全部”,结果相同。
更新1: 使用 Eclipse 重新创建项目,一切正常。 令人惊讶的是为什么使用 Android studio 这不起作用!
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt')
}
debug {
debuggable true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt')
}
}
在 build.gradle 文件的调试块中设置 minifyEnabled false。
工作室缓存有问题。
文件 -> 使缓存无效/重新启动...可能会帮助你。
我也面临着类似的问题。
我已经尝试过:
但没有成功。
我最终所做的就是按Ctrl+Shift++。这是扩展所有代码块的快捷方式。之后我刚刚运行了该项目并且成功了。
尝试清理并重建项目。 尝试在此方法中进行一些登录以检查它是否正在执行。
LOG.(TAG,"method being executed")
在测试设备上卸载并安装应用程序解决了我的问题。
我尝试过:
从 Android Studio 3.6 开始,无法选择禁用即时运行 所以我没有尝试。 查看这个 StackOverflow 问题
我也遇到了和你一样的问题。我认为这是由于某种原因在我清理代码时发生的,并且我正在折叠一些代码块。
解决方案是使用快捷键 CTRL + SHIFT + + 展开我的所有代码块,然后单击 文件>无效缓存/重新启动...
我正在使用Android Studio Arctic Fox | 2020.3.1 和构建:gradle:4.1.3
重新启动Android Studio
如果您知道没有任何更改可能会导致此问题,因为它之前一直在工作。然后尝试关闭并重新启动 Android Studio。这对我有用
Android Studio 3.5
。
干净的构建对我不起作用
我也面临着类似的问题。
添加到你的文件build.gradle中
DEV {
initWith debug
}
确保文件名和类名没有拼写错误。