在Logcat中查看日志,有时候会看到一些奇怪的类名,例如“com.example.app.MainActivity$1”,这是因为Java编译器在编译内部类时自动为它们生成具有奇怪名称的类名。
为了使Logcat中的类名更有意义,我们可以使用Proguard来混淆代码并将内部类的名称变更为可读的名称。我们可以在app的build.gradle文件中添加以下代码:
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
然后,在proguard-rules.pro文件中添加以下代码:
-keepattributes SourceFile,LineNumberTable
-keep class com.example.app.** {*;}
这将保持特定包中所有类的名称,使其在Logcat中更有意义。 请注意,这只会影响发布版本,而不会影响开发版本。