java - Android 在神秘的 d() 方法中崩溃

标签 java android obfuscation generated-code

收到 Play 商店崩溃报告(万岁)。堆栈跟踪列出了 MyActivity#d() 中发生的 NPE,位于 MyAtivity#onCreate() 内部。这是编译器生成的方法吗?肯定不是我写的!

Caused by: java.lang.NullPointerException
at com.example.MyActivity.d(Unknown Source)
at com.example.MyActivity.onCreate(Unknown Source)
at android.app.Activity.performCreate(Activity.java:5008)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)

提前致谢!

最佳答案

当你进行构建时,你可能确实运行了 proguard(Google 混淆)。 查找名为mapping.txt 的文件,它将为您提供 d() 方法的真实名称。

映射.txt: 列出原始类、方法和字段名称与混淆后的类、方法和字段名称之间的映射。当您收到来自发布版本的错误报告时,此文件非常重要,因为它将模糊的堆栈跟踪转换回原始的类、方法和成员名称。

here了解更多。

关于java - Android 在神秘的 d() 方法中崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12901634/

相关文章:

java - 没有类型为 'org.springframework.cloud.bootstrap.encrypt.RsaProperties' 的合格 bean

android - Android 应用程序图标中的通知计数徽章

java - Spring 启动:unable to open nested entry 'WEB-INF/lib-provided/ecj-3.12.3.jar'

vb.net - 将友元类添加到混淆的排除列表中

java - 动态生成Testng.xlm来运行测试

java - 安卓 : FirebaseAuth - Unsuccessful debug_token response from Facebook

java - Apache POI hsmf 对 getMesssageDate 返回 null

android - logcat 显示与我的应用程序相关的任何内容的空白窗口,但向 android studio 发送垃圾邮件不相关的错误消息

java - 这些对象会被GC回收吗?

c - 如何在静态库中隐藏目标文件名?