parse.com 1.6 crash analytics not working - ios

Parse version 1.6
Crash analytics are not working.
I am not able to see the crash logs in dashboard. Configured my app according to this:
https://parse.com/docs/ios_guide#crashreporting/iOS
I see the following message when I run the app on simulator:
Breakpad Uploader: unable to determine minidump file length
Any help is highly appreciated.

I suggest you to try using the device for testing the crash report feature, as by design the simulator doesn't work.
"Crash Reporting for iOS only works on a device and not in the simulator." - Björn Kaiser, from Facebook.

did you initialized crash reporting in app ? ;
// Enable Crash Reporting
[ParseCrashReporting enable];
// Setup Parse
[Parse setApplicationId:#"parseAppId" clientKey:#"parseClientKey"];
or if you are using Swift
// Enable Crash Reporting
ParseCrashReporting.enable();
// Setup Parse
Parse.setApplicationId("parseAppId", clientKey:"parseClientKey")
If not please do
You can always follow these step by step Tutorial on how to set it up
hope it helps.

Related

Firebase Crashlytics not showing Logs after SDK upgrade in iOS App

My app is using Crashlytics which is moved from Fabrics to Firebase Crashlytics. My problem is that I recently upgraded firebase Crashlytics and after this upgrade there is no "Logs" displaying with crash report. I cross checked all settings and code but couldn't find any possible reason.
It was working properly before upgrade. Now all crashes are being reported properly as all the information such as "Stack Trace", "Keys" are as before but "Logs" section is empty.
My question may be an "iOS Duplicate" of this question. Anybody please tell me if there is any part of code I'm missing to get this "Logs" data.
Here is the code I setup in my AppDelegate for configuration :
FirebaseApp.configure()
FirebaseConfiguration.shared.setLoggerLevel(.min)
Crashlytics.crashlytics().setCrashlyticsCollectionEnabled(true)
Just to confirm, are you capturing log messages with Crashlytics.crashlytics().log()? See https://firebase.google.com/docs/crashlytics/customize-crash-reports?platform=ios#add-logs

Missing data in Fabric for IOS "Crashed: com.apple.root.default-qos"

I'm using Fabric.io to monitor and collect crash data for a IOS app.
I'm receiving now a lot of crash reports for this error "Crashed: com.apple.root.default-qos" but when I check Fabric to analyze it I got the following report:
where the stack-trace of the crash is missing.
What should I do to receive the complete stack-trace?
App uses some libraries imported using CocoaPods.
I'm attaching here also a screenshot with linked libraries:
I have discovered that this report was sent because of missing "Privacy - Face ID Usage Description" (NSFaceIDUsageDescription) in Info.plist.
I have no idea why the report was not complete, but after adding this key my app has stopped crashing.

Stop tracking Crashlytics runtime in iOS

I've just integrated Crashlytics with iOS and it's quite easy integration steps. I started session of crashlytics in didFinishLaunchingWithOptions with code [Fabric with:#[[Crashlytics class]]]; and its start tracking.
At some point in App I want to stop tracking of Crashlytics so how Can I do this? Is there any code for this? There is a way to stop tracking from online Dashboard in Crashlytics but I want to do from Code.
Looking for suggestions and help.
Thanks.
Xcode debugger does NOT allow Crashlytics to process crash reports.
if you have your device connected to your Mac, XCode's debugger will step in as well. So just disconnect the device before testing.
To make sure a crash is reported during your simulator testing:
Launch simulator
Press stop
Launch your app and force a crash
Relaunch the app from simulator
See the crash report in the web dashboard
Reference
Mike from Fabric here. I believe you're looking to kill an active Fabric session once it's been started with the same launch/session of the app.
In that case, there is not a way to kill the SDK session. I'd recommend wrapping the Fabric init in a conditional call or boolean check to see if Fabric should be initialized or not.

Parse Crash reporting doesn't work

I'm trying to setup Parse crash reporting on iOS, using this guide, but unfortunatly, even after several crashes, there is nothing on my dashboard.
Here is my code (i'm using sdk 1.6.3) :
- (void)crash {
[NSException raise:NSGenericException format:#"Everything is ok. This is just a test crash."];
}
...
[ParseCrashReporting enable];
[Parse setApplicationId:#"********"
clientKey:#"********"];
[self performSelector:#selector(crash) withObject:nil afterDelay:10.0];
I followed the troubleshooting guide:
Make sure you've enabled Crash Reporting in your App Delegate before you initialize Parse. DONE
If you're testing, make sure Xcode isn't catching the crash with the debugger. DONE
Build, run, stop the app, and then run it from the home screen.
Crashes are sent on the next run of the app. Make sure the app isn't crashing again before it has a chance to send the crash information. If you're testing, you can ensure this by adding a delay. DONE
Crashes may take up to a minute to show up on the dashboard.DONE
Make sure you don't have any other crash reporting solutions linked to your application, as they might interfere with each other. DONE, (disable Flurry)
I tried on both simulator and device, as recommanded here.
Finally, i've this message in my console:
+[PFAnalytics trackEventually:params:]: unrecognized selector sent to class 0x10f08ac20
Any help is highly appreciated.
Parse must have a bug in v1.6.3 because I have downloaded v1.6.0 and it works all fine.
You can download it here:
https://parse.com/downloads/ios/parse-library/1.6.0
And this is the order for enabling:
[ParseCrashReporting enable];
[Parse setApplicationId:kParse_AppID clientKey:kParse_ClientKey];
This probably doesn't count as any answer but I don't have enough rep to comment.
Have you tried enabling the crash report AFTER setting up parse with your keys? I know this was an issue for me when I was trying to enable the local datastore.
I know it goes against the guide but weirder things have happened when I use Parse...
Parse 1.7.3 is also busted... upgrade to 1.7.4!! !
EDIT: DONT UPDATE TO 1.7.5 -- that seems to be busted too !!
Latest version Parse SDK 1.6.4 fixes this problem!
https://www.parse.com/docs/downloads

Use multiple crash reporter on iOS

We successfully use TestFlightLive as our crash reporter, but I think some features are missing. These missing features are in another crash reporter: Crashlytics, but as of now I'm not willig to switch crash reporters completely. So I wonder if it's possible to use these both crash reporters together in one app (which is meant to be in the app store in the future).
I run both TestFlight and Crashlytics together and they both report errors fine. Like Jens Kohl says above, it must be included after the TestFlight SDK is initialized. Here's my code:
#ifdef DEBUG
// setup testflight if in debug (ie dev) mode
[TestFlight takeOff:kTestFlightAPIKey];
#endif
[Crashlytics startWithAPIKey:kCrashlyticsAPIKey];
You can only use 1 crash reporting framework. The framework catching the crash lets the other framework either not catch it or get wrong data since there is already new code executed on the thread.

Resources