Mar*_*ino 21 android android-studio
我正在调查一个问题,只有minifyEnabled在Gradle中设置为true才会出现.
我正在使用日志语句进行调试,但问题显然非常深刻.我有什么办法可以将minifyEnabled设置为true,但仍然可以使用Android Studio调试器吗?
我知道答案可能是'不',但无论如何我想问.
简而言之:是否可以运行minifyEnabled
设置为true
?的Android Studio调试器?
小智 12
已经可以调试缩小的应用程序。首先,编辑您的proguard-rules.pro
并添加行:
-dontobfuscate
-keepattributes SourceFile,LineNumberTable
Run Code Online (Sandbox Code Playgroud)
另外,请务必注释掉这一行:
# -renamesourcefileattribute SourceFile
Run Code Online (Sandbox Code Playgroud)
然后,build.gradle
通过以下方式编辑您的应用程序文件并定义您的调试构建类型:
debug {
minifyEnabled true
useProguard false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
Run Code Online (Sandbox Code Playgroud)
所有这些更改都是必要的(如果您跳过keepattributes
和renamesourcefileattribute
,则调试将起作用,但日志记录仍将指向代码中的错误位置)
然后,使用调试器运行应用程序。
现在,日志记录会将您准确地指向代码中的正确位置。此外,如果设置了任何断点,这些断点将被正确执行。Android Studio 将允许您调查变量、检查条件并评估代码。
请记住在proguard-rules.pro
构建版本之前删除文件中的更改。您还可以在单独的 proguard 文件中定义调试和发布设置。
归档时间: |
|
查看次数: |
4202 次 |
最近记录: |