5 Replies
      Latest reply on Jan 9, 2018 11:52 PM by Michael-zhang
      Wingzero Level 1 Level 1 (0 points)

        I have imported ios-charts in my Objective-C project, and running it in debug mode is fine. However, today I tried to archive and ad-hoc distribute my app, the app crashes at launch...

        I have set the swift optimization to none for release mode, still no luck.

        I have no log or trace since it's installed on iPhone 6. I am looking for help if anything I missed...


        I tried to remove all swift stuff and archive, everything is as usual now. However, once I drag the swift files into my Objective-C based project, Run(debug) the app is fine. But if archive(release) and install it on iPhone, immediate crash at launch. Anything what I am missing?


        I am with latest Xcode and swift official release

        • Re: app crashes at launch as release build on iPhone - but debugging is fine
          junkpile Level 6 Level 6 (2,485 points)

          What does the crash log say? (Hook up device to Xcode, open Devices window and look at the logs)

          • Re: app crashes at launch as release build on iPhone - but debugging is fine
            pagornp Level 1 Level 1 (0 points)

            How about now?

            I have the same problem. I need your help T^T

              • Re: app crashes at launch as release build on iPhone - but debugging is fine
                eskimo Apple Staff Apple Staff (13,925 points)

                How about now?

                [echoing junkpile’s original response]  Please post a symbolicated crash log.

                Share and Enjoy

                Quinn “The Eskimo!”
                Apple Developer Relations, Developer Technical Support, Core OS/Hardware
                let myEmail = "eskimo" + "1" + "@apple.com"

                  • Re: app crashes at launch as release build on iPhone - but debugging is fine
                    nnkhanh Level 1 Level 1 (0 points)

                    I had the sample issue on iOS 9.2, 9.0, on iPhone 6 pus, iPad mini.

                    Please help me. I tried but no luck for many days.


                    Below is sample log I got from device:

                    ============================ Part of the log ======================

                    Incident Identifier: 3BA99166-BB2B-4E83-89E1-8AD6982559ED

                    CrashReporter Key:   18f1e8dc235fc49697977300f246dd70cdbaefe5

                    Hardware Model:      iPad4,2

                    Process:             MyApp [4841]

                    Path:                /private/var/mobile/Containers/Bundle/Application/68835641-AA2A-4C20-9547-432C9995BA6C/MyApp.app/MyApp

                    Identifier:          com.asahi.asahishimbun.iphone.MyApp

                    Version:    (6.0.0)

                    Code Type:           ARM-64 (Native)

                    Parent Process:      launchd [1]



                    Date/Time:           2017-02-23 09:50:16.16 +0700

                    Launch Time:         2017-02-23 09:46:50.50 +0700

                    OS Version:          iOS 9.2 (13C75)

                    Report Version:      105



                    Exception Type:  EXC_BAD_ACCESS (SIGSEGV)

                    Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000180

                    Triggered by Thread:  0



                    Filtered syslog:

                    None found



                    Thread 0 name:  Dispatch queue: com.apple.main-thread

                    Thread 0 Crashed:

                    0   libobjc.A.dylib               0x0000000181d8dbdc objc_msgSend + 28

                    1   UIKit                         0x00000001879ee654 -[UINibStringIDTable lookupKey:identifier:] + 132

                    2   UIKit                         0x00000001879ea2a4 -[UINibDecoder decodeObjectForKey:] + 48

                    3   UIKit                         0x00000001878c9530 -[UINib instantiateWithOwner:options:] + 1380

                    4   UIKit                         0x00000001878cb92c -[NSBundle(UINSBundleAdditions) loadNibNamed:owner:options:] + 224

                    5   AsahiDigital                   0x00000001000a52bc 0x100060000 + 283324

                    6   AsahiDigital                   0x00000001003a805c 0x100060000 + 3440732

                    7   AsahiDigital                   0x00000001003a8f4c 0x100060000 + 3444556

                    8   UIKit                         0x00000001874000c0 -[UIViewController loadViewIfRequired] + 996

                    9   UIKit                         0x00000001874bfda8 -[UINavigationController _layoutViewController:] + 72

                    10  UIKit                         0x00000001874bfc80 -[UINavigationController _updateScrollViewFromViewController:toViewController:] + 416

                    11  UIKit                         0x00000001874beec8 -[UINavigationController _startTransition:fromViewController:toViewController:] + 144

                    12  UIKit                         0x00000001874bea6c -[UINavigationController _startDeferredTransitionIfNeeded:] + 868

                    13  UIKit                         0x00000001874be694 -[UINavigationController __viewWillLayoutSubviews] + 60

                    14  UIKit                         0x00000001874be5fc -[UILayoutContainerView layoutSubviews] + 208

                    15  UIKit                         0x00000001873fb778 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 656

                    16  QuartzCore                     0x0000000184e0ab2c -[CALayer layoutSublayers] + 148

                    17  QuartzCore                     0x0000000184e05738 CA::Layer::layout_if_needed(CA::Transaction*) + 292

                    18  QuartzCore                     0x0000000184e055f8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32

                    19  QuartzCore                     0x0000000184e04c94 CA::Context::commit_transaction(CA::Transaction*) + 252

                    20  QuartzCore                     0x0000000184e049dc CA::Transaction::commit() + 512

                    21  QuartzCore                     0x0000000184dfe0cc CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 80

                    22  CoreFoundation                 0x00000001826c4588 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32

                    23  CoreFoundation                 0x00000001826c232c __CFRunLoopDoObservers + 372

                    24  CoreFoundation                 0x00000001826c275c __CFRunLoopRun + 928

                    25  CoreFoundation                 0x00000001825f1680 CFRunLoopRunSpecific + 384

                    26  GraphicsServices               0x0000000183b00088 GSEventRunModal + 180

                    27  UIKit                         0x0000000187468d90 UIApplicationMain + 204

                    28  AsahiDigital                   0x00000001000fb314 0x100060000 + 635668

                    29  libdyld.dylib                 0x00000001821928b8 start + 4



                    Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager

                      • Re: app crashes at launch as release build on iPhone - but debugging is fine
                        Michael-zhang Level 1 Level 1 (0 points)

                        This kind of crash only happens on the versions between iOS 9.0.2 and iOS 9.2.x, and only on the apps from App Store. The stack information just points to the function which call the method "loadNibNamed:owner:options". It confuses us.

                        When you install the app to the device on debug mode or release mode through Xcode, it's normal and will not encounter this crash any longer.



                        In Xcode 8 or Xcode 9, when your project contains the picture which DisplayGamut is P3 or Encoding is ARGB-16, this kind of crash will happens on the device who download the app from App Store. So it's smart to replace the picture. The fastest way is as follows:

                        1.find the Assets.car file in the .ipa

                        2.use assetutil command to product pictures' json, just like this:

                        sudo xcrun --sdk iphoneos assetutil --info Assets.car > Assets.json

                        3.it's easy to find "DisplayGamut": "P3" string in the Assets.json;

                        just replace the picture with a new one.