Firebase Test Lab测试APK崩溃View.java:6597含义及问题源码定位方法
崩溃日志问题解答
1. View.java:6597的含义
View.java是Android系统Framework层的View控件源码文件,冒号后的数字6597代表代码的行号。这行对应的是系统View类中performClick方法的执行逻辑,属于系统处理控件点击事件的通用流程节点,不属于你的应用业务代码,只是崩溃调用栈中展示的完整调用链路的一环。
2. 定位项目问题代码的步骤
- 第一步优先锁定应用自有代码的栈节点:日志中
com.photobangkok.dimmi.MainActivity$a.onClick(Unknown Source:4)就是触发崩溃的直接业务代码位置,Unknown Source是APK打包开启混淆后,调试符号被移除导致的。 - 若你留存了本次打包对应的
mapping.txt混淆映射文件,可以通过Android Studio内置的ProGuard还原工具,将混淆后的类名MainActivity$a还原为实际的内部类名,Unknown Source:4对应该类onClick方法中的第4行可执行代码。 - 若未留存mapping文件,可在下次测试打包前配置保留调试符号:在模块级
build.gradle的对应构建类型配置中添加debuggable true,同时在proguard-rules.pro中添加如下规则保留行号信息:
-keepattributes SourceFile,LineNumberTable -renamesourcefileattribute SourceFile
- 本次崩溃的报错类型为
java.lang.RuntimeException: Test Crash,属于代码主动抛出的测试类崩溃,定位到MainActivity对应点击事件的onClick方法后,直接查找主动抛出该异常的代码行即可。
内容的提问来源于stack exchange,提问作者alberto
相关产品推荐
相关产品推荐

