You haven't enabled crash reporting before starting Shake
As per the documentation, make sure you have set the isCrashReportingEnabled
flag to true
before calling the start
method. If you call it after starting Shake, crash reporting won't work.
You are using defaultUncaughtExceptionHandler after starting Shake
If you are using the defaultUncaughtExceptionHandler
in your code, Crash reporting won't work if you invoke Shake before it. To ensure proper functionality of Shake Crash reporting, set Shake.start()
after defaultUncaughtExceptionHandler
.
(iOS) Your app's symbolication files are missing
dSYM files are not generated
Make sure that you are generating symbolication files during your build process.
Navigate to your app target build settings in your Xcode project, and search for Debug Information Format. DWARF and dSYM file should be the selected option for the current configuration.
Bitcode is enabled for your app
Apps built with Bitcode enabled generate <UUID>.bcsymbolmap
files and pack them in your application archive.
dSYM files are obfuscated using their respective .bcsymbolmap file and should be deobfuscated before uploading to Shake dashboard.
We recommend using Fastlane for Bitcode enabled apps, as it automates the deobfuscation process and obtains the correct dSYM files directly from AppStoreConnect.
If uploading files manually
On your web Dashboard visit Settings › Apps, expand your app and click its Mapping files button. Your missing dSYMs' UUID will be shown there, along with the number of crashes occurred. Upload the missing dSYM files.
If using Fastlane
When using Shake's Fastlane plugin, make sure that the dSYMs have been uploaded successfully — you should get a success or error message.
If you have any other questions, don't hesitate to contact us through the Intercom bubble on your Dashboard or via email 📧 friends@shakebugs.com.
Or even better, join our Slack Community and get in touch with our developers within a few minutes.