我试图弄清楚 Firebase 将如何进行从混淆代码到真实代码的映射,根据他们的文档,我需要添加这一行 -
-keepattributes SourceFile,LineNumberTable
这应该保持文件名和行号不变。然而,尽管使用了这种配置,我注意到在反编译我的 APK 后,它包含了混淆的文件名,如 a.java、b.java 等。此外,我在这个答案中读到这SourceFile
只是一个可以重命名的字符串。我不明白这一点。
我的问题是
SourceFile
属性是什么?- 尽管文档说文件名保持不变,为什么保持
SourceFile
属性仍然混淆文件? - 为什么
SourceFile
属性可以重命名?