admin管理员组文章数量:1356588
I have a Flutter application with code obfuscation enabled for both Android and iOS. I want to see readable stack traces in Firebase Crashlytics for crashes in production. For Android, this is well-documented: I can upload the mapping/symbols file using the Firebase CLI:
firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/symbols
After this, stack traces appear in readable form.
However, for iOS, this same command does not work. When using obfuscation in Flutter for iOS:
flutter build ios --obfuscate --split-debug-info=path/to/symbols
Crashlytics shows obfuscated Dart stack traces like:
#00 abs 0000000108cea5f7 _kDartIsolateSnapshotInstructions+0x357cf7
#01 abs 00000001096b0737 _kDartIsolateSnapshotInstructions+0xd1de37
...
I can decode them locally using:
flutter symbolize -i stack.txt -d path/to/app.<hash>.symbols
But this is not convenient, especially for non-developers or larger teams.
Question
Is it possible to make Firebase Crashlytics show readable stack traces for obfuscated Dart code on iOS?
If not, is there any official confirmation or documentation that this is not supported?
From what I’ve seen so far, the official Flutter docs on obfuscation mention flutter symbolize but don’t clearly state whether Crashlytics supports this automatically for iOS or not.
Would appreciate any clear answer, workaround, or links to official sources. Thanks!
I have a Flutter application with code obfuscation enabled for both Android and iOS. I want to see readable stack traces in Firebase Crashlytics for crashes in production. For Android, this is well-documented: I can upload the mapping/symbols file using the Firebase CLI:
firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/symbols
After this, stack traces appear in readable form.
However, for iOS, this same command does not work. When using obfuscation in Flutter for iOS:
flutter build ios --obfuscate --split-debug-info=path/to/symbols
Crashlytics shows obfuscated Dart stack traces like:
#00 abs 0000000108cea5f7 _kDartIsolateSnapshotInstructions+0x357cf7
#01 abs 00000001096b0737 _kDartIsolateSnapshotInstructions+0xd1de37
...
I can decode them locally using:
flutter symbolize -i stack.txt -d path/to/app.<hash>.symbols
But this is not convenient, especially for non-developers or larger teams.
Question
Is it possible to make Firebase Crashlytics show readable stack traces for obfuscated Dart code on iOS?
If not, is there any official confirmation or documentation that this is not supported?
From what I’ve seen so far, the official Flutter docs on obfuscation mention flutter symbolize but don’t clearly state whether Crashlytics supports this automatically for iOS or not.
Would appreciate any clear answer, workaround, or links to official sources. Thanks!
Share Improve this question asked Mar 27 at 21:35 FetFrumosFetFrumos 5,9549 gold badges68 silver badges114 bronze badges 1- firebase.google/docs/crashlytics/… – Robin Dijkhof Commented Mar 31 at 7:06
1 Answer
Reset to default 0Here’s how to do it as of Flutter 3.12.0+ and firebase_crashlytics
Build with Obfuscation:
flutter build ipa --obfuscate --split-debug-info=/path/to/symbols
This generates app.dSYM and symbol files in /path/to/symbols
2. Set Up Automatic dSYM Upload:
Ensure your project uses Flutter 3.12.0+ and firebase_crashlytics: ^3.3.4+.
Integrating Crashlytics via flutterfire configure adds a [firebase_crashlytics] Crashlytics Upload Symbols run script to your Xcode project (Runner > Build Phases).
"${PODS_ROOT}/FirebaseCrashlytics/run"
3. Build and deploy your app. After a crash, restart the app to send the report.
本文标签: How to get readable stack trace in Firebase Crashlytics for obfuscated Flutter iOS appStack Overflow
版权声明:本文标题:How to get readable stack trace in Firebase Crashlytics for obfuscated Flutter iOS app? - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744066813a2585152.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论