Unable to symbolicate frameworks sometimes - ipad

I am completely at a loss on this one. I was able to symbolicate one of my crash reports (obtained from a user submitting it via the app) and it looked like this:
Thread 0 Crashed:
0 libobjc.A.dylib 0x360a3fbc objc_msgSend + 16
1 libobjc.A.dylib 0x360a50c5 _objc_rootRelease + 37
2 Foundation 0x31b7ec75 _timerRelease + 49
3 CoreFoundation 0x3729e709 __CFRunLoopDoTimer + 429
4 CoreFoundation 0x3729d29f __CFRunLoopRun + 1207
5 CoreFoundation 0x372204dd CFRunLoopRunSpecific + 301
6 CoreFoundation 0x372203a5 CFRunLoopRunInMode + 105
7 GraphicsServices 0x35dddfed GSEventRunModal + 157
8 UIKit 0x3055b743 UIApplicationMain + 1091
9 [App Name] 0x00002463 main (main.m:54)
However all of the rest of the crash reports look like this after being symbolicated:
Thread 0 Crashed:
0 libobjc.A.dylib 0x3790bfbc 0x37908000 + 16316
1 libobjc.A.dylib 0x3790d0c5 0x37908000 + 20677
2 Foundation 0x3505ec75 0x3505a000 + 19573
3 CoreFoundation 0x37d99709 0x37d0c000 + 579337
4 CoreFoundation 0x37d9829f 0x37d0c000 + 574111
5 CoreFoundation 0x37d1b4dd 0x37d0c000 + 62685
6 CoreFoundation 0x37d1b3a5 0x37d0c000 + 62373
7 GraphicsServices 0x37af2fcd 0x37aef000 + 16333
8 UIKit 0x3189b743 0x3186a000 + 202563
9 [App Name] 0x00002463 main (main.m:54)
Why do CoreFoundation, UIKit, etc. symbolicate in the first instance but not for the rest?
NOTE: I do have the original archive (that was submitted to the app store) and these are being symbolicated within Xcode 4.2 simply by dragging it into the organizer.

You most likely do not have the symbols on your Mac of the iOS version that crashed.
Check the iOS Version of the crash report (shows up in the top part of the report) and then check if you have the symbols for this iOS version here: /Developer/Platforms/iPhoneOS.platform/DeviceSupport.

Related

iPad Air Overheating for developer

Some of my application users are running iPad Air. I have had reports lately of the application crashing, but all the crash reports are just giving me the standard crashed in main method. After further investigation, I think the problem might be with the iPad overheating when they are taking photos.
Is there anything as a developer I can do to maybe save data before the application crashes from overheating?
Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x180591b90 objc_msgSend + 16
1 Foundation 0x1818e2658 __NSFireDelayedPerform + 428
2 CoreFoundation 0x180ed1794 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 28
3 CoreFoundation 0x180ed1438 __CFRunLoopDoTimer + 884
4 CoreFoundation 0x180eceb4c __CFRunLoopRun + 1520
5 CoreFoundation 0x180df8c50 CFRunLoopRunSpecific + 384
6 GraphicsServices 0x1826e0088 GSEventRunModal + 180
7 UIKit 0x1860da088 UIApplicationMain + 204
8 intelliSPEC21 0x10009b56c main (AdvancedMain.m:10)
9 libdyld.dylib 0x1809968b8 start + 4

How to debug a main.m iOS app crash

I have integrated Crashlytics in my iOS app which is currently live on the App Store. In my latest update, I am seeing a lot of crashes with the stack trace as below.
Thread : Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x30f6ef46 objc_msgSend + 5
1 UIKit 0x26665f07 -[UINavigationController viewWillAppear:] + 406
2 UIKit 0x265d5b1f -[UIViewController _setViewAppearState:isAnimating:] + 438
3 CoreFoundation 0x22fcf46d __53-[__NSArrayI enumerateObjectsWithOptions:usingBlock:]_block_invoke + 48
4 CoreFoundation 0x22fc84c3 -[__NSArrayI enumerateObjectsWithOptions:usingBlock:] + 234
5 UIKit 0x265d5c9b -[UIViewController _setViewAppearState:isAnimating:] + 818
6 UIKit 0x2688c799 __56-[UIPresentationController runTransitionForCurrentState]_block_invoke + 584
7 UIKit 0x26639bd9 _applyBlockToCFArrayCopiedToStack + 308
8 UIKit 0x265b5dd7 _afterCACommitHandler + 458
9 CoreFoundation 0x23069ffd __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 20
10 CoreFoundation 0x230676bb __CFRunLoopDoObservers + 278
11 CoreFoundation 0x23067ac3 __CFRunLoopRun + 914
12 CoreFoundation 0x22fb53b1 CFRunLoopRunSpecific + 476
13 CoreFoundation 0x22fb51c3 CFRunLoopRunInMode + 106
14 GraphicsServices 0x2a5a2201 GSEventRunModal + 136
15 UIKit 0x2661f43d UIApplicationMain + 1440
16 MyApp 0x00123553 main (main.m:16)
I recently added interstitial ads in my app and I believe the crash is related to that. But how can I get more information from this stack trace or from crashlytics to understand what is really going wrong?
Have you tried enabling Exception Breakpoints?
1) Inside Xcode, switch to the Breakpoints Navigator (left menu, seventh icon from left to right, it looks just like a breakpoint)
2) Click the + symbol in the lower left corner and choose "Add Exception Breakpoint"
3) Run and crash.
You should now be able to see what really caused the crash.

Google Analytics iOS SDK [GAIReachabilityChecker reachabilityFlagsChanged: crash

I keep on experiencing crash in my iOS app that is related to the GAIReachabilityChecker.
It seems to crash on this function:
-[GAIReachabilityChecker reachabilityFlagsChanged:]
And this is the error log:
Thread : Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x00000001981939d0 objc_msgSend + 16
1 0x0000000100274de8 -[GAIReachabilityChecker reachabilityFlagsChanged:]
2 SystemConfiguration 0x000000018f0905cc reachPerform + 836
3 CoreFoundation 0x000000018c1db77c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
4 CoreFoundation 0x000000018c1daad8 __CFRunLoopDoSources0 + 256
5 CoreFoundation 0x000000018c1d8d70 __CFRunLoopRun + 632
6 CoreFoundation 0x000000018c119b38 CFRunLoopRunSpecific + 452
7 GraphicsServices 0x0000000191b3f830 GSEventRunModal + 168
8 UIKit 0x000000018f1580e8 UIApplicationMain + 1156
9 0x0000000100072870 main (main.m:17)
10 libdyld.dylib 0x0000000198783aa0 start + 4
There are no steps reproduce this issue, it just randomly crashing.
I'm using the the latest Google Analytics iOS SDK version 3.0

Mysterious iOS crash with tiny stack trace

I have one user, and only one user, that regularly gets the following crash:
Thread : Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x0000000192e7a984 objc_object::release() + 8
1 libobjc.A.dylib 0x0000000192e79474 (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 524
2 CoreFoundation 0x0000000186855b38 _CFAutoreleasePoolPop + 28
3 CoreFoundation 0x0000000186915124 __CFRunLoopRun + 1460
4 CoreFoundation 0x0000000186855dd0 CFRunLoopRunSpecific + 452
5 GraphicsServices 0x000000018c53dc0c GSEventRunModal + 168
6 UIKit 0x0000000189986fc4 UIApplicationMain + 1156
7 MyApp 0x00000001001a92d0 main (main.m:17)
8 libdyld.dylib 0x0000000193453aa0 start + 4
This is the entire crash, and I have no clue what causes it.
The user has a pretty standard phone, but it only started happening when they got a replacement iPhone 5 earlier this year. Given that timeline and the fact they are the only one with the crash, might the phone itself be at fault?
Is there anywhere I could look for more information to default this information?

How can I debug this crash log

I get this crash log from my device log after that my app is crashed. Before crash I clicked on cancel button from search bar inside UITableView.
How can I understand what and where is the problem ?
how can I debug this kind of log from production device?
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x3b74b1fc __pthread_kill + 8
1 libsystem_pthread.dylib 0x3b7b2a4e pthread_kill + 54
2 libsystem_c.dylib 0x3b6fc028 abort + 72
3 libc++abi.dylib 0x3ab4a98a abort_message + 70
4 libc++abi.dylib 0x3ab636e2 default_terminate_handler() + 250
5 libobjc.A.dylib 0x3b19b936 _objc_terminate() + 190
6 libc++abi.dylib 0x3ab611b0 std::__terminate(void (*)()) + 76
7 libc++abi.dylib 0x3ab60d12 __cxa_rethrow + 98
8 libobjc.A.dylib 0x3b19b80a objc_exception_rethrow + 38
9 CoreFoundation 0x30d724e2 CFRunLoopRunSpecific + 638
10 CoreFoundation 0x30d7224e CFRunLoopRunInMode + 102
11 GraphicsServices 0x35aac2e6 GSEventRunModal + 134
12 UIKit 0x33627840 UIApplicationMain + 1132
13 MYAPPNAME 0x000ffc44 0xfa000 + 23620
14 libdyld.dylib 0x3b694ab4 start + 0
------- EDITED ------
i get Last Exception Backtrace:
0 CoreFoundation 0x30e3ee7e __exceptionPreprocess + 126
1 libobjc.A.dylib 0x3b19b6c2 objc_exception_throw + 34
2 CoreFoundation 0x30e3ed50 +[NSException raise:format:arguments:] + 100
3 Foundation 0x317e70aa -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 86
4 UIKit 0x33796348 -[UITableView _endCellAnimationsWithContext:] + 7940
5 MYAPPNAME 0x00233972 0xfa000 + 1284466
6 MYAPPNAME 0x00232e3c 0xfa000 + 1281596
7 MYAPPNAME 0x00232fd8 0xfa000 + 1282008
8 MYAPPNAME 0x002319d4 0xfa000 + 1276372
9 Foundation 0x3181933a __NSFireDelayedPerform + 410
10 CoreFoundation 0x30e09e7a
__CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 10
11 CoreFoundation 0x30e09a96 __CFRunLoopDoTimer + 790
12 CoreFoundation 0x30e07e1e __CFRunLoopRun + 1214
13 CoreFoundation 0x30d7246c CFRunLoopRunSpecific + 520
14 CoreFoundation 0x30d7224e CFRunLoopRunInMode + 102
15 GraphicsServices 0x35aac2e6 GSEventRunModal + 134
16 UIKit 0x33627840 UIApplicationMain + 1132
17 MYAPPNAME 0x000ffc44 0xfa000 + 23620
18 libdyld.dylib 0x3b694ab2 tlv_initializer + 2
The crash happened because of an unhandled exception.
While symbolicating the crash report with the Xcode organizer usually helps, it doesn't help in this case, since stack frame 13 will only show something like main (main.m:14).
If the crash report doesn't contain an Last Exception Backtrace section, the report is basically meaningless.
Try to reproduce the crash while running the app with the debugger or integrate a 3rd party crash report solution that is able to provide the Last Exception Backtrace and also the Application Information section which gives you the detailed exception error.
There are many 3rd party solutions out there, I won't recommend any, since I would be biased :)
Update: As you now provided the Last Exception Backtrace it shows that there is an Assertion triggered when a tableview animation is ending. Once you symbolicates the crash report you'll see which lines of code in your app are causing this.

Resources