有什么方法可以看到更详细的异常报错信息?

2015-07-30 10:53:22 +08:00
 mthli

比如有如下这个一个异常:

java.lang.ClassCastException: java.lang.Object cannot be cast to com.xxx.android.widget.adapter.p$b

我大概能猜出p$b对应的是代码中的哪一部分,不过我想确认一下到底是不是我猜想的那样。

那么有什么好的方法或者工具看到p$b到底是什么呢?

4787 次点击
所在节点    Android
5 条回复
Bairrfhoinn
2015-07-30 12:18:38 +08:00
找到对应的代码行,这个是类型转换不了导致的错误,看看是哪个对象转换不了,可以结合反编译工具查看对应的class文件。
lee015
2015-07-30 12:28:59 +08:00
proguard混淆了类名,调试时编译不开proguard吧
Bown
2015-07-30 13:37:08 +08:00
ProGuard 或 DexGuard 混淆了
build/output/mapping下找打包时生成的mapping文件,反向找混淆前的类名
zhouqian
2015-07-30 14:33:48 +08:00
@Bown 正解
somebody
2015-08-23 08:21:25 +08:00
ProGuard 有个命令行参数可以根本 mapping 文件把调用栈还原,不需要人肉查找

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/209490

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX