如何让Firebase Crashlytics显示混淆Flutter iOS应用的可读堆栈跟踪?
Flutter iOS混淆应用的Firebase Crashlytics可读堆栈跟踪问题
我有一个同时适配Android和iOS的混淆Flutter应用,希望在Firebase Crashlytics中查看生产环境崩溃的可读堆栈跟踪。
Android端解决方案
Android端官方已有明确方案,通过Firebase CLI上传映射/符号文件即可实现自动解析:
firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/symbols
执行该命令后,Crashlytics中的堆栈跟踪即可显示为可读形式。
iOS端遇到的问题
但iOS端执行上述命令无法生效。构建混淆Flutter iOS应用的命令为:
flutter build ios --obfuscate --split-debug-info=path/to/symbols
此时Crashlytics中显示的Dart堆栈跟踪为混淆后的内容,示例如下:
#00 abs 0000000108cea5f7 _kDartIsolateSnapshotInstructions+0x357cf7 #01 abs 00000001096b0737 _kDartIsolateSnapshotInstructions+0xd1de37 ...
目前仅能通过本地命令手动解码:
flutter symbolize -i stack.txt -d path/to/app.<hash>.symbols
但这种手动方式对非开发人员或大型团队来说并不便捷。
问题
- 是否可以让Firebase Crashlytics自动显示混淆后Flutter iOS应用的可读Dart堆栈跟踪?
- 如果不支持,是否有官方确认或相关文档说明这一点?
目前查阅Flutter官方混淆文档仅提及flutter symbolize命令,但未明确说明Crashlytics是否支持iOS端自动解析,希望得到明确答案、解决方案或官方资料说明。
内容的提问来源于stack exchange,提问作者FetFrumos
相关产品推荐
相关产品推荐

