How to upload dsyms files which developed with Flutter?
Solution 1
Let your Xcode upload it automatically when you run/build your app.
I. Open Xcode > Targets > MyProjectName > Build phases
Add two scripts (using + sign) consisting of each of these
-
"${PODS_ROOT}/FirebaseCrashlytics/run"
-
"${PODS_ROOT}/FirebaseCrashlytics/upload-symbols" -gsp "${PROJECT_DIR}/MyProjectName/GoogleService-Info.plist" -p ios "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}"
Important: Make sure to replace
MyProjectName
with your project name but leave rest as it is.
II. Also make sure to check these options in Targets > MyProjectName > Build settings
Set Debug information format to DWARF with dSYM file
Solution 2
When preparing my app for release I take these steps to export, upload, and get the dSYM's:
- In terminal I run 'flutter build ios --release'
- Open the iOS project in xCode and switch the device to 'Generic iOS Device'
- From the top menu Product>Archive
- Once finished the Organizer window will show your archived build. You can also manually open this window from Window>Organizer
- Choose the build you want to upload to iTunes Connect and hit Distribute App and follow the process
- After upload is complete right click on the build in the organizer window and click 'Show in Finder'
- You should see an archive file in finder, right-click it and click 'Show Package Contents'.
- Inside there should be a folder called dSYM that you can zip and send wherever you need
Solution 3
you can use Fastlane
to automate also this as part of release process.
here's an example that can go into your Fastfile
platform :ios do
desc "Upload symbols to Crashlytics"
lane :toCrashlytics do
upload_symbols_to_crashlytics
end
end
then you can run fastlane ios toCrashlytics
to run it.
see this link for more details.
Solution 4
After building an Archive of your Flutter app (using Xcode), you can run the following command from your Flutter App's ios
directory (using Firebase's upload tool):
Pods/FirebaseCrashlytics/upload-symbols -gsp /path/to/GoogleService-Info.plist -p ios build/Runner.xcarchive/dSYMs
Change the above command line to point to the correct Firebase plist file. the -p
flag specifies platform (which can be ios
, mac
, or tvos
). The above command will also look for the App's archive file Runner.xcarchive
.
Comments
-
Kiran Sarvaiya over 1 year
I am developing one Cross-platform app with flutter support. I Integrated firebase Crashlytics for crash reports. before I need to check report one error message comes
Upload 1 missing dSYM required to process 4 crashes
for that, I tried firebase docs
Get deobfuscated crash reports
also, I followed steps to build iOS Archive with flutter
Preparing an iOS App for Release
Still, There is the same issue on firebase portal
Upload 1 missing dSYM required to process 4 crashes
I tried this many times but still not done yet.
If someone has Idea then please help me to fix this issue.
Thanks, Community