How can I find the error in a TestFlight crash report?

I have uploaded my app to App Store Connect TestFlight. Then I have downloaded it in TestFlight on my iPad. But the app always crashes a few seconds after opening. It seems to be always the same issue. I have a few crash reports in App Store Connect-->App name-->TestFlight-->Feedback-->Crashs. I have opened a crash report in Xcode but I don´t find the error that causes the crash. How can I find the error in Xcode? Is it possible to find the class and line in the class where the crash happened? In addition, how can I export a crash report from Xcode?

The crash doesn´t happen in debug mode on my iPad, it only happens when I install and open my app after downloading it from TestFlight on my iPad.

Answered by DTS Engineer in 820637022

It’s better if you reply as a reply, rather than in the comments. See Quinn’s Top Ten DevForums Tips for this and other titbits.

Looking at your crash report, I see that the process crashed because it accesses unmapped memory:

Exception Type:  EXC_BAD_ACCESS (SIGILL)
Exception Subtype: KERN_INVALID_ADDRESS at 0x000000016d3d93b0

The crashing thread backtrace looks like this:

Thread 0 Crashed:
0   MyGameiOS        … 0x1028c4000 + 764260
1   MyGameiOS        … 0x1028c4000 + 8565972
2   MyGameiOS        … 0x1028c4000 + 24000068
3   MyGameiOS        … 0x1028c4000 + 59941520
4   QuartzCore       … CA::Display::DisplayLinkItem::dispatch_(CA::SignPost::Interval<(CA::SignPost::CAEventCod…
5   QuartzCore       … CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigne…
6   QuartzCore       … CA::Display::DisplayLink::dispatch_deferred_display_links(unsigned int) + 352 (CADisplay…
7   UIKitCore        … _UIUpdateSequenceRun + 84 (_UIUpdateSequence.mm:136)
8   UIKitCore        … schedulerStepScheduledMainSection + 172 (_UIUpdateScheduler.m:1171)
9   UIKitCore        … runloopSourceCallback + 92 (_UIUpdateScheduler.m:1334)
10  CoreFoundation   … __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (CFRunLoop.c:1970)
11  CoreFoundation   … __CFRunLoopDoSource0 + 176 (CFRunLoop.c:2014)
12  CoreFoundation   … __CFRunLoopDoSources0 + 244 (CFRunLoop.c:2051)
13  CoreFoundation   … __CFRunLoopRun + 840 (CFRunLoop.c:2969)
14  CoreFoundation   … CFRunLoopRunSpecific + 588 (CFRunLoop.c:3434)
15  GraphicsServices … GSEventRunModal + 164 (GSEvent.c:2196)
16  UIKitCore        … -[UIApplication _run] + 816 (UIApplication.m:3846)
17  UIKitCore        … UIApplicationMain + 340 (UIApplication.m:5503)
18  MyGameiOS        … 0x1028c4000 + 57228016
19  MyGameiOS        … 0x1028c4000 + 9503152
20  MyGameiOS        … 0x1028c4000 + 56185028
21  MyGameiOS        … 0x1028c4000 + 24385964
22  MyGameiOS        … 0x1028c4000 + 58824544
23  MyGameiOS        … 0x1028c4000 + 58461856
24  MyGameiOS        … 0x1028c4000 + 58487588
25  MyGameiOS        … 0x1028c4000 + 58846524
26  MyGameiOS        … 0x1028c4000 + 57271876
27  MyGameiOS        … 0x1028c4000 + 59818024
28  dyld             … start + 2724 (dyldMain.cpp:1338)

Frames 28 through 14 are typical of an app’s main thread. Frames 13 through 10 show the run loop running a run loop source. Frames 9 through 4 suggest that this is a CADisplayLink. Frames 3 through 0 are your code. None of your frames are symbolicated, so it’s hard to tell what’s going on.

So, my best guess here is that your have a CADisplayLink and somewhere in its callback you’re crashing due to unmapped memory. To make further process you’re gonna need to symbolicate your frames in the crash report. See Adding identifiable symbol names to a crash report.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

If you post a crash report, I may be able to offer insights from that.

For advice on how to do that, see Posting a Crash Report.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Accepted Answer

It’s better if you reply as a reply, rather than in the comments. See Quinn’s Top Ten DevForums Tips for this and other titbits.

Looking at your crash report, I see that the process crashed because it accesses unmapped memory:

Exception Type:  EXC_BAD_ACCESS (SIGILL)
Exception Subtype: KERN_INVALID_ADDRESS at 0x000000016d3d93b0

The crashing thread backtrace looks like this:

Thread 0 Crashed:
0   MyGameiOS        … 0x1028c4000 + 764260
1   MyGameiOS        … 0x1028c4000 + 8565972
2   MyGameiOS        … 0x1028c4000 + 24000068
3   MyGameiOS        … 0x1028c4000 + 59941520
4   QuartzCore       … CA::Display::DisplayLinkItem::dispatch_(CA::SignPost::Interval<(CA::SignPost::CAEventCod…
5   QuartzCore       … CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigne…
6   QuartzCore       … CA::Display::DisplayLink::dispatch_deferred_display_links(unsigned int) + 352 (CADisplay…
7   UIKitCore        … _UIUpdateSequenceRun + 84 (_UIUpdateSequence.mm:136)
8   UIKitCore        … schedulerStepScheduledMainSection + 172 (_UIUpdateScheduler.m:1171)
9   UIKitCore        … runloopSourceCallback + 92 (_UIUpdateScheduler.m:1334)
10  CoreFoundation   … __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (CFRunLoop.c:1970)
11  CoreFoundation   … __CFRunLoopDoSource0 + 176 (CFRunLoop.c:2014)
12  CoreFoundation   … __CFRunLoopDoSources0 + 244 (CFRunLoop.c:2051)
13  CoreFoundation   … __CFRunLoopRun + 840 (CFRunLoop.c:2969)
14  CoreFoundation   … CFRunLoopRunSpecific + 588 (CFRunLoop.c:3434)
15  GraphicsServices … GSEventRunModal + 164 (GSEvent.c:2196)
16  UIKitCore        … -[UIApplication _run] + 816 (UIApplication.m:3846)
17  UIKitCore        … UIApplicationMain + 340 (UIApplication.m:5503)
18  MyGameiOS        … 0x1028c4000 + 57228016
19  MyGameiOS        … 0x1028c4000 + 9503152
20  MyGameiOS        … 0x1028c4000 + 56185028
21  MyGameiOS        … 0x1028c4000 + 24385964
22  MyGameiOS        … 0x1028c4000 + 58824544
23  MyGameiOS        … 0x1028c4000 + 58461856
24  MyGameiOS        … 0x1028c4000 + 58487588
25  MyGameiOS        … 0x1028c4000 + 58846524
26  MyGameiOS        … 0x1028c4000 + 57271876
27  MyGameiOS        … 0x1028c4000 + 59818024
28  dyld             … start + 2724 (dyldMain.cpp:1338)

Frames 28 through 14 are typical of an app’s main thread. Frames 13 through 10 show the run loop running a run loop source. Frames 9 through 4 suggest that this is a CADisplayLink. Frames 3 through 0 are your code. None of your frames are symbolicated, so it’s hard to tell what’s going on.

So, my best guess here is that your have a CADisplayLink and somewhere in its callback you’re crashing due to unmapped memory. To make further process you’re gonna need to symbolicate your frames in the crash report. See Adding identifiable symbol names to a crash report.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

I have opened the file crashlog.crash in Xcode-->Window-->Devices and Simulators. What should I do now to symbolicate the frames in the crash report?

Did you try working through the process described in Adding identifiable symbol names to a crash report?

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

I have found the dSYM file in Xcode-->Window-->Organizer-->My app-->Archives-->Selected my archive-->Right-clicked and Show in Finder-->Right-clicked the .xcarchive file-->Show Package Contents.

What should I do with the dSYM file to symbolize the crashlog.crash file?

Written by Fat_Panda in 821589022
What should I do with the .dSYM file to symbolize the crashlog.crash file?

Did you check that the build UUIDs match up?

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

  1. Look for a binary image with that name in the list of binary images at the bottom of the crash report. This list contains the build UUID of each binary image that was loaded into the process at the time of the crash.

I found the UUID <cb989b502a6731e6a1fb7348aff2c63c> in the list of binary images but I don´t know what I should do with the UUID. In addition, where can I enter this command:

% mdfind "com_apple_xcode_dsym_uuids == <UUID>"

In my case, would it be like this?

% mdfind "com_apple_xcode_dsym_uuids == <cb989b502a6731e6a1fb7348aff2c63c>"

You need to check that the build UUID of the .dSYM file matches the build UUID of your app in the Binary Images section of your crash report.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

I have found the following UUID in the Binary Images section of the crash report: <f16c4f904bbe308cb682c29431f7adcd> In addition I have found the dSYM file. But I don't know how to open and find the UUID in the dSYM file. I have tried to open the dSYM file with TextEdit but it doesn't work. How can I find the UUID in my dSYM file? In addition, I don't know what I should enter in macOS Terminal when I want to use % grep to find the UUID in the dSYM file.

It worked to symbolicate the lines in Terminal. But I don't get more informations here than in Xcode about the crash. When I go to App Store Connect-->My app-->TestFlight and then open my crash report in Xcode then I get the same messages than in the macOS Terminal.

Frames 3 through 0 are your code.

Messages from macOS Terminal for Frames 3 through 0:

SharedCodeProject_MyClass__Updated__301_MoveNext (in MyGameiOS) (<unknown>:1)

System_Runtime_CompilerServices_AsyncMethodBuilderCore_Start_TStateMachine_GSHAREDVT_TStateMachine_GSHAREDVT_ (in MyGameiOS) + 388

MyGameiOS_SharedCodeProject_MyClass_Update_Microsoft_Xna_Framework_GameTime (in MyGameiOS) + 184

-[iOSGameView doTick] (in MyGameiOS) (registrar.mm:13304)

What does (<unknown>:1) mean? In which line in my class did the error happened? Is it normal that there is no error or exception message displayed here?

Written by Fat_Panda in 821969022
How can I find the UUID in my dSYM file?

Using dwarfdump. Adding identifiable symbol names to a crash report explains the exact syntax.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

How can I find the error in a TestFlight crash report?
 
 
Q