Search code examples
xcodeios16xcode14

Xcode 14 beta 5 cause crash on working app


We have been trying to run our app to prepare for iOS 16 but so far no luck. The app runs perfectly in Xcode 13. Also when we download the app from App Store to iOS 16 beta device, it works with no problem.

What we face with new Xcode 14 Beta 5 is the app runs till the first view controller then we get a weird error:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Application circumvented Objective-C runtime dealloc initiation for <UINavigationController> object.'
*** First throw call stack:
(
    0   CoreFoundation                      0x00007ff800427380 __exceptionPreprocess + 242
    1   libobjc.A.dylib                     0x00007ff80004dbaf objc_exception_throw + 48
    2   Foundation                          0x00007ff800b876ac _userInfoForFileAndLine + 0
    3   UIKitCore                           0x0000000124447d4e -[UIViewController dealloc] + 1475
    4   UIKitCore                           0x0000000124359e30 -[UINavigationController dealloc] + 389
    5   libobjc.A.dylib                     0x00007ff80004b6a1 _ZN11objc_object17sidetable_releaseEbb + 203
    6   libobjc.A.dylib                     0x00007ff80004be64 _ZN19AutoreleasePoolPage12releaseUntilEPP11objc_object + 180
    7   libobjc.A.dylib                     0x00007ff80004bcad objc_autoreleasePoolPop + 203
    8   UIKitCore                           0x00000001252e54bf -[_UIAfterCACommitBlock run] + 80
    9   UIKitCore                           0x00000001252e59a4 -[_UIAfterCACommitQueue flush] + 190
    10  UIKitCore                           0x0000000124d40730 _runAfterCACommitDeferredBlocks + 782
    11  UIKitCore                           0x0000000124d2eede _cleanUpAfterCAFlushAndRunDeferredBlocks + 96
    12  UIKitCore                           0x0000000124d64abb _afterCACommitHandler + 72
    13  CoreFoundation                      0x00007ff800386015 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
    14  CoreFoundation                      0x00007ff800380982 __CFRunLoopDoObservers + 515
    15  CoreFoundation                      0x00007ff800380ecd __CFRunLoopRun + 1161
    16  CoreFoundation                      0x00007ff800380667 CFRunLoopRunSpecific + 560
    17  GraphicsServices                    0x00007ff809bfc28a GSEventRunModal + 139
    18  UIKitCore                           0x0000000124d30621 -[UIApplication _run] + 994
    19  UIKitCore                           0x0000000124d354fd UIApplicationMain + 123
    20  xxxxxx                          0x000000010e9aa830 main + 96
    21  dyld                                0x00000001136e52bf start_sim + 10
    22  ???                                 0x00000001148c751e 0x0 + 4639716638
)

Solution

  • OK, So I fixed my own problem. For me it was the code in the dependency file I was using in my pods. So, simply search for

    + (void)initialize {
    }
    

    which is most possibly causing the error.