docs: document Play Console symbol upload for Android desymbolication#182985
docs: document Play Console symbol upload for Android desymbolication#182985alvarisi wants to merge 4 commits intoflutter:masterfrom
Conversation
|
An existing Git SHA, To re-trigger presubmits after closing or re-opeing a PR, or pushing a HEAD commit (i.e. with |
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
|
Hi @reidbaker @jmagman @gmackall , let me know if this MR can/suitable to be merge. And let me know if you are able to review. |
b086031 to
a8a0ee8
Compare
There was a problem hiding this comment.
Code Review
This pull request adds valuable documentation on how to upload native debug symbols to the Google Play Console for Android crash desymbolication. The changes cover both libflutter.so and libapp.so symbols, including a workaround for an existing issue with libapp.so symbol files. My feedback includes suggestions to improve the clarity of the file renaming instructions and to provide a more comprehensive set of examples for different architectures.
docs/engine/Crashes.md
Outdated
|
|
||
| When building with `--obfuscate --split-debug-info=<dir>`, Flutter generates symbol files named like `app.android-arm64.symbols`. Play Console requires a `.so` extension to accept these uploads. | ||
|
|
||
| A [fix](https://github.com/flutter/flutter/pull/181275) for proper symbol packaging has been merged to `master` but is not yet in a stable release. In the meantime, rename each generated symbol file by replacing the `.symbols` extension with `.so` and changing the first `.` separator to `-`: |
There was a problem hiding this comment.
To improve clarity and robustness, consider rephrasing the file renaming instruction to be more declarative by showing the filename pattern transformation, rather than describing the procedural steps. This makes the instruction clearer and less ambiguous.
| A [fix](https://github.com/flutter/flutter/pull/181275) for proper symbol packaging has been merged to `master` but is not yet in a stable release. In the meantime, rename each generated symbol file by replacing the `.symbols` extension with `.so` and changing the first `.` separator to `-`: | |
| A [fix](https://github.com/flutter/flutter/pull/181275) for proper symbol packaging has been merged to `master` but is not yet in a stable release. In the meantime, rename each generated symbol file from `app.<arch>.symbols` to `app-<arch>.so`: |
| app.android-arm64.symbols → app-android-arm64.so | ||
| app.android-x64.symbols → app-android-x64.so |
There was a problem hiding this comment.
The examples for renaming symbol files are helpful. To make them more comprehensive, please consider adding examples for other common Android architectures like arm and x86.
| app.android-arm64.symbols → app-android-arm64.so | |
| app.android-x64.symbols → app-android-x64.so | |
| app.android-arm.symbols → app-android-arm.so | |
| app.android-arm64.symbols → app-android-arm64.so | |
| app.android-x86.symbols → app-android-x86.so | |
| app.android-x64.symbols → app-android-x64.so |
This PR adds a new section to
docs/engine/Crashes.mddocumenting how to upload native debug symbols to Google Play Console for automatic desymbolication of Android crash reports.The existing doc covers manual symbolication (ndk-stack, addr2line) but does not explain the Play Console upload workflow. Developers hitting obfuscated ANR/crash stacktraces in Play Console have no guidance on which files to upload or how to obtain them.
What is added:
libflutter.sosymbols (automatic for Flutter ≥ 3.32 via Remove default for stripped option inengine/src/flutter/tools/gn, don't strip by default on android #161546; manual download URL for older versions).libapp.sosymbols when building with--obfuscate --split-debug-info: rename the generated.symbolsfiles to.soso Play Console accepts them.Note: A proper fix for the
libapp.sopackaging issue has been merged tomaster(#181275) but is not yet in a stable release. Once a stable release ships with that fix, the workaround paragraph in this doc should be updated orremoved accordingly.
Fixes #182653
Pre-launch Checklist
//github.com/).