Forcing crash symbolication in crashes organizer and Xcode 7 - ios

Currently, my crash organizer looks as follows.
I have not really worked with crash logs before, but to me the crashes do not look symbolicated. I am unable to find where the app has crashed and for what reason. In addition, when I open the stack trace in the project, nothing is highlighted and I cannot tell and which line it crashed in the file. My question is: is there a way to symbolicate all these crashes from within the organizer, or must it be done through terminal?
Thanks.

What you're seeing is that the SDK classes like UITableView are symbolicated, but classes from your "YLSA" app are not. Both should be symbolicated automatically, but in my experience one or the other (or both) often do not symbolicate. I've been developing for iOS for five years and this has been a persistent problem through all the different Xcode versions.
I'm seeing the same problem as you in Xcode 7, but I was able to symbolicate my logs with this workaround:
In the list of crash logs, right-click the desired log and select Show in Finder. This will show you a package containing one or more .crash files and some metadata.
Navigate through the package until you find a crash log. You will see that the same info has or hasn't been symbolicated here.
In Xcode, open the Devices window and select a connected device, then click the View Device Logs button.
Drag the crash log in step 2 from the Finder into the list of logs for this device.
When I do this, I never see the log I added appear in the list, but if I click the headings once or twice to re-sort the list, then I see it.
After a moment, the crash log will become completely symbolicated.
If you already have a lot of logs in your list, you can compare the date, iOS version and hardware model as you view the log in the Finder to the logs in Xcode to make sure you're viewing the same log. Then look at the line that says "Triggered by Thread" to get the thread number that crashed, then scroll down to that thread to see the code that triggered the crash.
This worked for me today with Xcode 7. I hope it helps you!

When you submit apps through Xcode, an option will appear to include debug symbols. Next time you submit an app version, be sure to select that; if you did not, that might explain the problem you're seeing. Unfortunately there's no way to retroactively do that for app versions already submitted, so you'll have to wait until you're ready to submit the next version to see if that was the problem.

Related

iOS - Crashlytics - missing several crashes

I have problem with Crashlytics (and with crashes shown in Xcode -> Organizer) because I don't see many of crashes that I should. From testers I should have many crashes there but I don't have. I logged into iTunes Connect and get zipped dSYM files there and upload them to Crashlytics to see new crashes. But even if it said that there is one or more new crash after upload dSYM I dont see any new crash. It looks like most of crashes I dont see in Crashlytics. Why is that? I need to get logs/crashes from devices that runs app from TestFlight. I think with Objective-C and before bitcode it worked much better.
Edit:
Is it possible that in another tool (from 3rd party company) there would be crashes that aren't in Apple Organizer? I am asking if I should try more tools from other companies. Maybe some of crashes are because of memory. Is it possible that these crashes aren't in reports?
Thanks
Fabric shows 1 crash 'row' for each crash, the number of crashes is in the same row.
But remember, crashes are only send to crashlytics if the user opens the app again.
You could also test Crashlytics by using:
Crashlytics.sharedInstance().crash()
First make sure you have uploaded your dsym files to your crashlytics dashboard, Check this
Click on the encircled part
Then on your Xcode > Window > Organizer
Tap Download dSYMs, When the download is complete right click your Archive and click Show in Finder, then right click the package and tap Show Package Contents
Open the dSYMs folder, then you can just drag and drop those dSYMs to the Crashlytics Dashboard
I think that your problem is related to two things:
As Gerrit said in the other answer crashes are sent to Crashlytics if the user opens the app again;
The crashes in Xcode --> Organizer are displayed only if the user sets on the share of analytics with App Developers.
For more informations take a look at this link: Share analytics, diagnostics, and usage information with Apple.
If people doesn't share the analytics you won't see any crash.
EDIT: I found that your problem may also be related to the debugger...for more information check this thread and see if you can find your solution here --> Crashlytics is not sending Crash report from iPhone.
I hope to have been helpful!
If the application is crashing before the like in your AppDelegate where you are setting up Fabric/Crashlytics then the crashes are not going to get sent through properly.
It may also be that the crashes you are experiencing are being filed as Out-of-memory crashes by Crashlytics.

TestFlight crash log not showing in Xcode?

Ok. I am on the latest version of Xcode, macOs, everything is updated. I just uploaded a new build to TestFlight and all of a sudden no crash reports are showing up in Organizer.
I know we had a crash because my tester showed me his phone - I had him go to Privacy settings and turn on the "share Analytics with developers" option, just as Apple says in their documentation.
This is what I see, despite multiple crashes from one of my testers and after waiting over 9 hrs for it too come through:
The odd thing is my last build generated full crash reports, which was great. I just retired that build, but the new build is not generating reports.
This is my scheme settings if that changes anything, I am new to test flight crash testing:
What am I doing wrong here?
I found that for me, the crash logs were not showing up in Xcode. However, if I completely exit Xcode and then re-open it the crash logs appeared. Not sure why this is. So to see my crash logs I had to:
Fully exit Xcode (Quit Xcode from the Xcode menu)
Reopen your project in Xcode
Go to Window > Organizer
Select the Crashes tab
You should now be able to select your appropriate build number from the drop down menu
Your crashes should now show up.
Keep in mind there may be a slight delay between when Apple receives it and when they show up in Xcode.

Why isn't Xcode crash report revealing the source code?

I've received my first crash report through TestFlight which I can see in the Organizer:
There are a couple of problems I'm having trying to debug the crash:
When I click the "Open in Project..." button, the project isn't automatically opened. Fine, but it's not even listed in the list of recent projects that's offered up to me as a next step (nothing is listed there, even though this is the only app I'm actively working on at the moment):
I click the "Browse..." button to open the .xcworkspace file for my project, but once the project opens, nothing useful happens. All I see is the Debug navigator opened with the crashed threads but nothing opens on the right side (editor):
Expanding the threads and clicking on the individual stack frames doesn't do anything.
The source code of the .xcworkspace file is the same code that was used to create the build that crashed. The app was archived and submitted to TestFlight with debug symbols and bitcode enabled. It's developed in Swift 2.2 with a few CocoaPods.
I've reviewed Apple's documentation on this (https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/AnalyzingCrashReports/AnalyzingCrashReports.html) but I still can't figure out what I'm doing wrong.
What can I do to get Xcode to show me the source code that corresponds to this crash report?

Find where iOS is crashing based on crash reports

I have an app in beta using TestFlight and I have been noticing crash reports appearing.
most of the reports are this
If I click on the button Open in project in the Organizer it takes me no where
This appears to be an internal crash correct?
How can I find out what UIBarButtonItem is causing the crash?
I Hope this will help you: Apple doc Crash Report , as you can see in the doc in the Listing 4 the crash report is fully symbolicated , Listing 6 shows partially symbolicated crash reports which looks like your case
From Apple Doc
You must keep both the application binary and the .dSYM file in order to be able to fully symbolicate crash reports. You should archive these files for every build that you submit to iTunes Connect. The .dSYM and application binary are specifically tied together on a per-build-basis, and subsequent builds, even from the same source files, will not interoperate with files from other builds. If you use Xcode's Build and Archive command then they will be placed in a suitable location automatically. Otherwise any location searchable by Spotlight (such as your home directory) is fine.
For more information about this you can check portion after Listing 6 in Symbolication
you can use crashlytics for identifying where the app is crashed.It will give the Controller name and line number of code also.
https://docs.fabric.io/ios/index.html Document
Easy to add your project also

Not able to run my App both on simulator and device, crashes without any error

I am getting a weird problem while running my App on Simulator as well as on the real device.
I am using Xcode version 6.1.1 on OS X 10.10.1, while running my app it loads the Launch Screen and gets crash without any error.
This problem is on simulator as well as on real device also.
I tried resetting contents and settings in simulator and even deleting the simulator and recreating it again in Xcode, but neither of them worked.
I browse through google and stack overflow but did not find the solution.
If I am trying with other examples its working fine.
In my app I am storing some data from server to document directory, Is the issue is because of this or there is something that I am missing.
Its surely not the Xcode problem I guess!
I am stucked from last 3 days, PLEASE HELP!!
Please identify the problem or provide crash log.
Maybe it's because of sending messages to deallocated objects.
You can check this by turning on Zombie objects.
Product -> Scheme -> Edit Scheme -> Run -> Enable Zombie Objects
Go to Breakpoint Navigator ( using ⌘ 7)
On bottom left click the "+" button and select "Add Exception Breakpoint"
In your Breakpoint list, you will see a "All Exceptions" added.
Launch your app and Xcode should stop where the exception is raised.

Resources