symbolize-android-stacktrace
Installation
SKILL.md
Symbolize Android stacktrace (Flutter + Codemagic)
Turn an obfuscated Google Play Console crash/ANR stacktrace into a symbolized one (file + line for every native and Flutter frame), so you can reason about the bug.
When to use this
All three must hold — if any is false, this skill is the wrong tool:
- The app is a Flutter app targeting Android.
- The trace was exported from the Google Play Console (Crash dashboard or ANR dashboard) — typically a
.txt/.logwithpc 0x…frames, optionally a# Application:/# Version:header. - The release build was produced by Codemagic CI/CD, with the workflow uploading both
android_native_debug_symbols.zipand<AppName>_<N>_artifacts.zip(Flutter's split-debug-info.symbolsfiles) as build artefacts. Without those, there is nothing to match the obfuscated PCs against.mapping.txt(R8/ProGuard) is also pulled when present — it lets the symbolizer turnKa.n.l+8style Java frames back intoio.flutter.embedding.engine.FlutterJNI.onSurfaceDestroyed, which is the difference between a readable Java side and a wall of obfuscated names.
If you're unsure whether the build was from Codemagic, check codemagic.yaml at the repo root or ask the user.