我们最近更新了我们的应用程序以使用 Android App Bundles (aab) 并且还包括 arm64 本机库。
由于这样做,我们在“Google Play 控制台”->“Android Vitals”->“ANRs & Crashes”中的本地代码中的崩溃日志没有正确符号化(java 调用堆栈符号化很好)。
典型调用堆栈的片段如下所示:
#21 pc 000000000015addc /data/app/com.mycompany.mygame-2/split_config.arm64_v8a.apk
#22 pc 0000000000293768 /data/app/com.mycompany.mygame-2/split_config.arm64_v8a.apk
#23 pc 0000000000294cf0 /data/app/com.mycompany.mygame-2/split_config.arm64_v8a.apk
该问题会影响 armv7 和 arm64 的崩溃。偶尔一个错误会有一个正确符号化的调用堆栈,现在大约 10% 的符号化正确。在使用 AAB 和 arm64 之前,我们看到几乎所有的调用堆栈都被正确符号化了。
为了解决这个问题,我们使用 Crashlytics 进行了调查,但也无法通过这种方式获得正确符号化的调用堆栈。由于我们之前没有使用过 Crashlytics,因此我们很难知道它是否存在同样的问题,或者我们是否只是错误地设置了 Crashlytics。但是,这篇文章表明其他用户可能在使用 AAB 和 Crashlytics 时遇到问题。
有没有其他人遇到过类似的困难?
是否有任何已知的解决方法?
有没有人更新使用 AAB 并且在 Google Play 控制台中没有看到崩溃报告符号的任何问题?