我们有很多不同的体型但是在更新到Android Studio 3.5之后,我们注意到一个奇怪的行为,即当我们在文件的某些lambda中创建断点时,如果该文件存在于多个构建变体中,则调试器无法正常工作,并且会在文件中被命中有趣的是,只有当断点被设置为在lambda的主体中触发时,整个问题才会发生,否则就会正常工作
因此,总而言之,要重现此问题,必须:
1.创建两种风格,并在每种风格中创建一个同名文件
1.创建一个代码,在这两种风格中的某行X
处包含lambda
现在两件事中只有一件会发生,而不是两件都发生:
- 当您在风格A中,并且在
X
行上创建触发器时,它将在风格B的文件中的同一行上中断 - 当您在风格B中,并且在
X
行上创建触发器时,它将在风格A文件的同一行上中断
以下是我们试图重现该问题时的一些屏幕截图:
ActualFlavor的AuthRepository(Active Build Variant):
DummyFlavor的AuthRepository:
所以问题是我们做错了什么?或者这真的是Android Studio现在的问题?
- Android Studio version = 3.5Kotlinversion = 1.3.50 build:gradle version = 3.5.1*
1条答案
按热度按时间luaexgnf1#
我在IntelliJ IDEA和Kotlin1.8.0中看到了同样的行为。我发现了一些肮脏的解决方法:我在lambda代码体中添加了一些压载代码行,如
println("smth")
。之后断点工作了。我认为这是一个Kotlin调试器错误,而不是AndroidStudio。