提问人:Kevin Worth 提问时间:10/9/2023 更新时间:10/9/2023 访问量:49
在 Android Studio 中设置 kotlin 断点时如何防止变量被优化
How to prevent variables from being optimized out when setting kotlin breakpoints in Android Studio
问:
我正在尝试在断点处检查变量的值,但 Android Studio 说我的变量“已被优化”[原文如此]。states
val states = mutableListOf<UiState>()
backgroundScope.launch(Dispatchers.Unconfined) {
viewModel.uiState.toList(states)
}
assertEquals(true, states[0].isLoading)
// Breakpoint here
viewModel.fooBarBaz()
我知道我可以在更高的位置设置一个断点,或者在使用该变量的断点下方添加一行代码(如打印语句),但这很烦人。如何告诉 Android Studio 不要优化我的局部变量?
答:
2赞
Kevin Worth
10/9/2023
#1
使用和里面。kotlinOptions
freeCompilerArgs = listOf("-Xdebug")
build.gradle.kts
android {
...
buildTypes {
getByName("debug") {
isMinifyEnabled = false
kotlinOptions {
freeCompilerArgs = listOf("-Xdebug")
}
}
getByName("release") {
...
}
}
...
}
评论