The majority of my app's crashes are in third party code like advertising SDKs. We can test our integration with the SDKs, but there's no way to test everything that our users will see. And with ad SDKs, they are remotely configured and load different ads all the time. A malicious or poorly configured ad seems to be a very common crash.

What I'm trying to accomplish is to detect that the crash was caused by a third party and then disable that SDK for the next session, thereby giving the user a sort of "safe mode" to run the app in so they don't experience crash after crash upon relaunch. I could just do this for all crashes and turn off every SDK, but I'd like to be more deliberate if possible.

What is possible, as far as I've determined

If your app crashes, Fabric will tell you through its CrashlyticsDelegate methods, e.g. - (void)crashlyticsDidDetectReportForLastExecution:(CLSReport *)report;.

These methods give you a CLSReport object, which tells you all the information that you set on Crashlytics (e.g. user info, custom keys and more). Unfortunately, this object doesn't tell you anything about the crash itself.