iOS Testflighted App crashes at the launch screen, on iPhone 4s running iOS8 only, when built+submitted with Xcode 7

1

Short:

I'm developing an iPhone app which is now on the app store, and am using TestFlight to ready the next version for production. However, I've had several iPhone 4s users report that the app crashes right when the splash screen appears.

Specifics:

  • The crash has only happened on TestFlight versions of the app, on iPhone 4s's running iOS8. It occurs every time the app is opened, with the splash screen visible before the main view appears.

  • It loads perfectly fine on the simulator across all devices, with no crash. It also launches fine on all iPhones 5 and up.

  • I've built this version of the app with Xcode 7.0.1.

Possible Lead:

  • I've run into a similar problem in the past where a TestFlighted version of the app crashed on loading after I had deleted or renamed image assets, even though they were no longer in use in any code. However, this issue was reproducible across all iPhone devices, which is not the case here. Thus I don't think this is the problem.

  • My only guess is that it might be something with 32-bit vs 64 bit architecture that Xcode 7 screws up when building (iPhone 4s runs 32-bit, and iPhone 5s and up all run 64-bit). I'll rebuild with Xcode 6 and submit to TestFlight again, and report back whether this solves the problem.

Crash Log:

I've obtained a crash log from one of my beta testers, and included it below -- however, I need assistance understanding this, as I'm not able to make sense of it. I tried to drag and drop the crash log into Device Logs as suggested here: How to symbolicate crash log Xcode?, but it didn't seem to symbolicate correctly, as you can see below:

Beta:                YES
Code Type:           ARM (Native)
Parent Process:      launchd [1]

Date/Time:           2015-10-03 20:23:13.499 -0700
Launch Time:         2015-10-03 20:23:12.279 -0700
OS Version:          iOS 8.4.1 (12H321)
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Triggered by Thread:  0

Last Exception Backtrace:
(0x288760d2 0x36d08c72 0x2739c81c 0x1bc6e8 0x1d2e8e 0x15a412 0xfbcaa 0xff894 0x2bed7558 0x2bf822f0 0x2bf82218 0x2bf8178c 0x2bf814c2 0x2bf81230 0x2bf811c4 0x2bed49c6 0x2b8ea3e0 0x2b8e5c30 0x2b8e5ab8 0x2b8e545a 0x2b8e524a 0x2c13afd0 0x2c13bd58 0x2c1465e4 0x2c13a0c2 0x2f34aebc 0x2883c030 0x2883b2f4 0x28839e4e 0x287856cc 0x287854de 0x2bf3c862 0x2bf37440 0x182b6e 0x372d6aaa)

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libsystem_kernel.dylib          0x3739cdf0 0x37388000 + 85488
1   libsystem_pthread.dylib         0x3741dc86 0x3741a000 + 15494
2   libsystem_c.dylib               0x3733b8bc 0x372f2000 + 301244
3   libc++abi.dylib                 0x36515bb8 0x36515000 + 3000
4   libc++abi.dylib                 0x3652f66a 0x36515000 + 108138
5   libobjc.A.dylib                 0x36d08f0e 0x36d02000 + 28430
6   libc++abi.dylib                 0x3652cdec 0x36515000 + 97772
7   libc++abi.dylib                 0x3652c8b4 0x36515000 + 96436
8   libobjc.A.dylib                 0x36d08dba 0x36d02000 + 28090
9   CoreFoundation                  0x28785768 0x2876b000 + 108392
10  CoreFoundation                  0x287854de 0x2876b000 + 107742
11  UIKit                           0x2bf3c862 0x2bec8000 + 477282
12  UIKit                           0x2bf37440 0x2bec8000 + 455744
13  Dap'd                           0x00182b6e 0xef000 + 605038
14  libdyld.dylib                   0x372d6aac 0x372d5000 + 6828

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0   libsystem_kernel.dylib          0x3738924c 0x37388000 + 4684
1   libdispatch.dylib               0x372a94ec 0x37297000 + 74988
2   libdispatch.dylib               0x372a921e 0x37297000 + 74270

Thread 2 name:  Dispatch queue: FBSSerialQueue
Thread 2:
0   libsystem_kernel.dylib          0x373894ec 0x37388000 + 5356
1   libdispatch.dylib               0x372a6b8e 0x37297000 + 64398
2   FrontBoardServices              0x2f34ae9e 0x2f335000 + 89758
3   libdispatch.dylib               0x37298c80 0x37297000 + 7296
4   libdispatch.dylib               0x372a34ce 0x37297000 + 50382
5   libdispatch.dylib               0x372a2d9c 0x37297000 + 48540
6   libdispatch.dylib               0x372a548e 0x37297000 + 58510
7   libdispatch.dylib               0x372a689e 0x37297000 + 63646
8   libsystem_pthread.dylib         0x3741ad9a 0x3741a000 + 3482
9   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 3:
0   libsystem_kernel.dylib          0x3739d9c0 0x37388000 + 88512
1   libsystem_pthread.dylib         0x3741ae14 0x3741a000 + 3604
2   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 4:
0   libsystem_kernel.dylib          0x3739d9c0 0x37388000 + 88512
1   libsystem_pthread.dylib         0x3741ae14 0x3741a000 + 3604
2   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 5:
0   libsystem_kernel.dylib          0x3739d9c0 0x37388000 + 88512
1   libsystem_pthread.dylib         0x3741ae14 0x3741a000 + 3604
2   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 6:
0   libsystem_kernel.dylib          0x3739d9c0 0x37388000 + 88512
1   libsystem_pthread.dylib         0x3741ae14 0x3741a000 + 3604
2   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 7:
0   libsystem_kernel.dylib          0x3739d9c0 0x37388000 + 88512
1   libsystem_pthread.dylib         0x3741ae14 0x3741a000 + 3604
2   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 8:
0   libsystem_kernel.dylib          0x3739d9c0 0x37388000 + 88512
1   libsystem_pthread.dylib         0x3741ae14 0x3741a000 + 3604
2   libsystem_pthread.dylib         0x3741aaec 0x3741a000 + 2796

Thread 9 name:  AVAudioSession Notify Thread
Thread 9:
0   libsystem_kernel.dylib          0x3738949c 0x37388000 + 5276
1   libsystem_kernel.dylib          0x37389290 0x37388000 + 4752
2   CoreFoundation                  0x2883b5ce 0x2876b000 + 853454
3   CoreFoundation                  0x28839b94 0x2876b000 + 846740
4   CoreFoundation                  0x287856cc 0x2876b000 + 108236
5   CoreFoundation                  0x287854de 0x2876b000 + 107742
6   libAVFAudio.dylib               0x27484ef8 0x2746b000 + 106232
7   libAVFAudio.dylib               0x274773f4 0x2746b000 + 50164
8   libsystem_pthread.dylib         0x3741cddc 0x3741a000 + 11740
9   libsystem_pthread.dylib         0x3741cd4e 0x3741a000 + 11598
10  libsystem_pthread.dylib         0x3741aaf8 0x3741a000 + 2808

Thread 0 crashed with ARM Thread State (32-bit):
    r0: 0x00000000    r1: 0x00000000      r2: 0x00000000      r3: 0x00000003
    r4: 0x00000006    r5: 0x39cdd9dc      r6: 0x39cc9840      r7: 0x0039a438
    r8: 0x145d6610    r9: 0x7420666f     r10: 0x39cc8074     r11: 0x145d6634
    ip: 0x00000148    sp: 0x0039a42c      lr: 0x3741dc8b      pc: 0x3739cdf0
  cpsr: 0x00000010
ios
objective-c
iphone
crash
xcode7
asked on Stack Overflow Oct 4, 2015 by sauceman • edited May 23, 2017 by Community

1 Answer

0

It turns out I made a noob mistake, and that the crash was indeed specific to iPhone 4s:

My app requires iOS 8 or higher, and I was initializing a camera capture session preset value that was compatible with all cameras of all iPhones supporting iOS8, except for the iPhone 4s' front-facing camera.

This also explains why the crash wasn't reproducible in Simulator, as camera capture is not supported there.

answered on Stack Overflow Oct 5, 2015 by sauceman

User contributions licensed under CC BY-SA 3.0