Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit d409dcd

Browse files
authored
iOS,docs: Update iOS symbolication docs (#54494)
As of flutter/flutter#153215, end user app archives now include symbols for the Flutter framework by default. So manual symbolication is no longer required. For engine developers and others who still need to deal with manual symbols, they can now be found in the Flutter tool cache and can thus be obtained from there if required. Issue: flutter/flutter#116493 [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
1 parent 4878a32 commit d409dcd

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

docs/Crashes.md

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
## Symbolicating stack traces for engine crashes
22

3-
The easiest way to symbolicate stack traces for Android and iOS is running the [dart_ci symbolizer locally](https://github.com/dart-lang/dart_ci/blob/main/github-label-notifier/symbolizer/README.md#using-this-locally). If that is not an option, the steps below explain how to do it manually.
3+
iOS app archives produced using Flutter 3.24 or later embed engine debugging symbols and thus crashes are symbolicated by default.
4+
5+
The easiest way to symbolicate stack traces for Android and older iOS apps is to run the [dart_ci symbolizer locally](https://github.com/dart-lang/dart_ci/blob/main/github-label-notifier/symbolizer/README.md#using-this-locally). If that is not an option, the steps below explain how to do it manually.
46

57
### Android
68

@@ -88,7 +90,25 @@ adb logcat | ~/dev/engine/src/third_party/android_tools/ndk/prebuilt/linux-x86_6
8890

8991
### iOS
9092

91-
The dSYM file for `Flutter.framework` (which is the Flutter Engine) for ios-release builds can be downloaded from Google Cloud Storage. Follow the steps from the Android section in this guide, but in the last step use a download url following this schema: `https://storage.cloud.google.com/flutter_infra_release/flutter/38a646e14cc25f5a56a989c6a5787bf74e0ea386/ios-release/Flutter.dSYM.zip` (replace the engine hash with your hash).
93+
Since Flutter 3.24, symbols can be found in the Flutter framework's artifact
94+
cache, within the xcframework bundle at
95+
`bin/cache/artifacts/engine/ios-release/Flutter.xcframework`.
96+
97+
* Symbols for device builds are in the `ios-arm64/dSYMs/Flutter.framework.dSYM` bundle.
98+
* Symbols for simulator builds are in the `ios-arm64_x86_64-simulator/dSYMs/Flutter.framework.dSYM` bundle.
99+
100+
For versions prior to Flutter 3.24, the dSYM bundle can downloaded from Google
101+
Cloud Storage. Follow the steps from the Android section in this guide, but in
102+
the last step use a download url following this schema:
103+
`https://storage.cloud.google.com/flutter_infra_release/flutter/38a646e14cc25f5a56a989c6a5787bf74e0ea386/ios-release/Flutter.dSYM.zip`
104+
(replace the engine hash with your hash).
105+
106+
For release since Flutter 3.24, these symbols are no longer uploaded as a
107+
separate archive and should be obtained from the artifact cache as described
108+
above. The artifact cache can be downloaded direcly using a URL following this
109+
schema:
110+
`https://storage.googleapis.com/flutter_infra_release/flutter/c11fe483947c95553610ab59210af643f031f5f4/ios-release/artifacts.zip`
111+
(replace the engine hash with your hash).
92112

93113
#### Symbolicating local builds
94114

0 commit comments

Comments
 (0)