[英]How to debug a Flutter app's crash from the provided stack trace in Google Play Console?
I have published a Flutter app on Play Store that reports crashes from time to time.我在 Play Store 上发布了一个 Flutter 应用程序,该应用程序不时报告崩溃。 To build it for release, I used obfuscation as described here with the command:
为了构建它以供发布,我使用了如下命令中所述的混淆:
flutter build apk --obfuscate --split-debug-info=build/app/outputs/symbols
Now in Play Console I get a stack trace from an occurring crash like:现在在 Play Console 中,我从发生的崩溃中得到堆栈跟踪,例如:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.package.name <<<
backtrace:
#00 pc 00000000000744b0 /apex/com.android.runtime/lib64/bionic/libc.so (abort+160)
#00 pc 00000000002bc350 /data/app/com.package.name-CelqfOPR1qgCAOmLM1XLVg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x5cc000)
#00 pc 00000000002b29c0 /data/app/com.package.name-CelqfOPR1qgCAOmLM1XLVg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x5cc000)
#00 pc 0000000000000001 <unknown>
where 'package.name' is the package name of my app.其中“package.name”是我的应用程序的 package 名称。
How do I deobfuscate/symbolize this stack trace?我如何去混淆/符号化这个堆栈跟踪?
I already tried using the flutter symbolize command for the appropriate architecture, as recommended:我已经尝试使用 flutter symbolize 命令来获得合适的架构,推荐如下:
flutter symbolize -i err.txt -d app.android-arm64.symbols
but it just prints again the err.txt file (the stack trace).但它只是再次打印 err.txt 文件(堆栈跟踪)。
Is there something I am missing in the whole process of debugging Flutter crash reports on Android?在调试 Android 上的 Flutter 崩溃报告的整个过程中,我是否遗漏了什么?
I also had the same problem.我也有同样的问题。 My crash stack like:
我的崩溃堆栈如下:
Fatal Exception: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1441)
at java.util.HashMap$EntryIterator.next(HashMap.java:1475)
at java.util.HashMap$EntryIterator.next(HashMap.java:1473)
at h.d.d.w.m.g$a.e(:29)
at h.d.d.w.m.g$a.c(:2)
at h.d.d.e.p(:34)
at h.d.d.e.q(:8)
at h.d.d.e.m(:5)
at h.d.d.e.l(:13)
at h.f.a.a.x(:7)
at h.f.a.a.r(:91)
at h.f.a.a.j()
at h.f.a.a$e.run(:45)
I use flutter symbolize command.but it just prints again the error.txt file.我使用 flutter 符号化命令。但它只是再次打印 error.txt 文件。
I haven't found an answer yet.我还没有找到答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.