Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Swift / SKStoreProductViewController pushViewController results in (lldb)

Tags:

ios

swift

To push the user to the iTunes store for desired items I'm using the following function:

func openStoreProductWithiTunesItemIdentifier(identifier: String) {

    let storeViewController = SKStoreProductViewController()
    storeViewController.delegate = self

    let parameters = [ SKStoreProductParameterITunesItemIdentifier : identifier, SKStoreProductParameterAffiliateToken : ITUNES_AFFILIATE_ID]
    storeViewController.loadProductWithParameters(parameters) { [weak self] (loaded, error) -> Void in
        if loaded {

            self!.navigationController?.pushViewControllerWithHandler(storeViewController, animated: true) {

                LilithProgressHUD.hide() // custom progress hud
            }
        }
    }
}

extension UINavigationController {

    func pushViewControllerWithHandler(viewController: UIViewController, animated: Bool, completion: Void -> Void) {

        CATransaction.begin()
        CATransaction.setCompletionBlock(completion)
        pushViewController(viewController, animated: animated)
        CATransaction.commit()
    }
}

Called by

let trackID = "thisIsMyTrackID"
openStoreProductWithiTunesItemIdentifier(trackID)

This results in

enter image description here enter image description here enter image description here

If I'm instead of:

self!.navigationController?.pushViewControllerWithHandler(storeViewController, animated: true) {

            LilithProgressHUD.hide() // custom progress hud
        }

Using:

self?.presentViewController(storeViewController, animated: true, completion: {
            LilithProgressHUD.hide() // custom progress hud
        })

, it is working. But I need the controller to push within the navigationController to fit the rest of the views and animations. What am I missing? Help is very appreciated.

Backtrace as requested:

    (lldb) bt all
* thread #1: tid = 0x9bb48, 0x000000018fcac524 libobjc.A.dylib`objc_exception_throw, queue = 'com.apple.main-thread', stop reason = breakpoint 1.2
    frame #0: 0x000000018fcac524 libobjc.A.dylib`objc_exception_throw
    frame #1: 0x0000000191274108 CoreFoundation`+[NSException raise:format:] + 116
    frame #2: 0x000000019dca04d0 StoreKit`-[SKStoreProductViewController _throwUnsupportedPresentationException] + 76
    frame #3: 0x000000019dc9ed24 StoreKit`-[SKStoreProductViewController willMoveToParentViewController:] + 108
    frame #4: 0x0000000197159174 UIKit`-[UIViewController _addChildViewController:performHierarchyCheck:notifyWillMove:] + 568
    frame #5: 0x000000019714f580 UIKit`-[UINavigationController pushViewController:transition:forceImmediate:] + 1220
    frame #6: 0x000000019714f06c UIKit`-[UINavigationController pushViewController:animated:] + 652
  * frame #7: 0x00000001000a32f4 cya`UINavigationController.pushViewControllerWithHandler(viewController=0x00000001028ae9c0, animated=true, completion=0x00000001000a35c4 cya`partial apply forwarder for reabstraction thunk helper from @callee_unowned @convention(block) () -> (@unowned ()) to @callee_owned () -> (@unowned ()) with unmangled suffix ".16" at UINavigationControllerExtensions.swift, self=0x0000000103844600) -> ()) -> () + 504 at UINavigationControllerExtensions.swift:24
    frame #8: 0x00000001000a3578 cya`@objc UINavigationController.pushViewControllerWithHandler(UIViewController, animated : Bool, completion : () -> ()) -> () + 196 at UINavigationControllerExtensions.swift:0
    frame #9: 0x00000001001b04f4 cya`DJProfileAsUserMusicTableVC.(loaded=true, error=nil, self=0x0000000102a358d0, storeViewController=0x00000001028ae9c0) -> ()).(closure #1) + 416 at DJProfileAsUserMusicTableVC.swift:697
    frame #10: 0x00000001001b0654 cya`thunk + 56 at DJProfileAsUserMusicTableVC.swift:0
    frame #11: 0x00000001001b0714 cya`thunk + 36 at DJProfileAsUserMusicTableVC.swift:0
    frame #12: 0x00000001001b0804 cya`thunk + 80 at DJProfileAsUserMusicTableVC.swift:0
    frame #13: 0x000000019dc9fb84 StoreKit`-[SKStoreProductViewController _loadDidFinishWithResult:error:] + 92
    frame #14: 0x000000019127a160 CoreFoundation`__invoking___ + 144
    frame #15: 0x000000019116dc3c CoreFoundation`-[NSInvocation invoke] + 284
    frame #16: 0x0000000192e158bc FrontBoardServices`__FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 36
    frame #17: 0x0000000192e15728 FrontBoardServices`-[FBSSerialQueue _performNext] + 176
    frame #18: 0x0000000192e15ad0 FrontBoardServices`-[FBSSerialQueue _performNextFromRunLoopSource] + 56
    frame #19: 0x0000000191222278 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
    frame #20: 0x0000000191221bc0 CoreFoundation`__CFRunLoopDoSources0 + 524
    frame #21: 0x000000019121f7c0 CoreFoundation`__CFRunLoopRun + 804
    frame #22: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #23: 0x0000000192bd1198 GraphicsServices`GSEventRunModal + 180
    frame #24: 0x0000000197128628 UIKit`-[UIApplication _run] + 684
    frame #25: 0x0000000197123360 UIKit`UIApplicationMain + 208
    frame #26: 0x000000010020c08c cya`main + 144 at AppDelegate.swift:19
    frame #27: 0x00000001901305b8 libdyld.dylib`start + 4

  thread #3: tid = 0x9bbc9, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x0000000190305188 libsystem_pthread.dylib`_pthread_wqthread + 968
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #4: tid = 0x9bbca, 0x0000000190304db0 libsystem_pthread.dylib`start_wqthread
    frame #0: 0x0000000190304db0 libsystem_pthread.dylib`start_wqthread

  thread #7: tid = 0x9bbdc, 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8, name = 'gputools.smt_poll.0x17403cde0'
    frame #0: 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8
    frame #1: 0x000000019016027c libsystem_c.dylib`nanosleep + 212
    frame #2: 0x000000019016019c libsystem_c.dylib`usleep + 64
    frame #3: 0x00000001025adeb0 GPUToolsCore`smt_poll_thread_entry(void*) + 136
    frame #4: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #5: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #6: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #8: tid = 0x9bbef, 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8, name = 'gputools.smt_poll.0x170220020'
    frame #0: 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8
    frame #1: 0x000000019016027c libsystem_c.dylib`nanosleep + 212
    frame #2: 0x000000019016019c libsystem_c.dylib`usleep + 64
    frame #3: 0x00000001025adeb0 GPUToolsCore`smt_poll_thread_entry(void*) + 136
    frame #4: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #5: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #6: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #9: tid = 0x9bbf4, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.apple.uikit.eventfetch-thread'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x0000000191c5cb1c Foundation`-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
    frame #6: 0x0000000191c7d60c Foundation`-[NSRunLoop(NSRunLoop) runUntilDate:] + 96
    frame #7: 0x0000000197a9dc7c UIKit`-[UIEventFetcher threadMain] + 136
    frame #8: 0x0000000191d5a50c Foundation`__NSThread__start__ + 1024
    frame #9: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #10: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #11: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #12: tid = 0x9bbfb, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.apple.NSURLConnectionLoader'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x000000019193bcec CFNetwork`+[NSURLConnection(Loader) _resourceLoadLoop:] + 336
    frame #6: 0x0000000191d5a50c Foundation`__NSThread__start__ + 1024
    frame #7: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #8: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #9: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #14: tid = 0x9bbfd, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'AVAudioSession Notify Thread'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x00000001aa8f1fe8 AVFAudio`GenericRunLoopThread::Entry(void*) + 164
    frame #6: 0x00000001aa917f14 AVFAudio`CAPThread::Entry(CAPThread*) + 84
    frame #7: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #8: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #9: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #17: tid = 0x9bc0f, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.squareup.SocketRocket.NetworkThread'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x0000000191c5cb1c Foundation`-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
    frame #6: 0x00000001003f57ec cya`-[_FSRRunLoopThread main](self=0x00000001740918f0, _cmd=<unavailable>) + 252 at FSRWebSocket.m:1838
    frame #7: 0x0000000191d5a50c Foundation`__NSThread__start__ + 1024
    frame #8: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #9: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #10: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #18: tid = 0x9bc21, 0x000000019024223c libsystem_kernel.dylib`__select + 8, name = 'com.apple.CFSocket.private'
    frame #0: 0x000000019024223c libsystem_kernel.dylib`__select + 8
    frame #1: 0x0000000191228b84 CoreFoundation`__CFSocketManager + 640
    frame #2: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #3: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #4: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #19: tid = 0x9bc70, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x000000019030536c libsystem_pthread.dylib`_pthread_wqthread + 1452
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #20: tid = 0x9bc77, 0x0000000190304db0 libsystem_pthread.dylib`start_wqthread
    frame #0: 0x0000000190304db0 libsystem_pthread.dylib`start_wqthread

  thread #21: tid = 0x9bc78, 0x0000000000000000
    frame #0: 0x0000000000000000
(lldb)

Backtrace without exception breakpoint:

(lldb) bt all
warning: could not load any Objective-C class information. This will significantly reduce the quality of type information available.
* thread #1: tid = 0x9c221, 0x0000000190242014 libsystem_kernel.dylib`__pthread_kill + 8, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x0000000190242014 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x0000000190309460 libsystem_pthread.dylib`pthread_kill + 112
    frame #2: 0x00000001901b63f4 libsystem_c.dylib`abort + 140
    frame #3: 0x000000018fc812d4 libc++abi.dylib`abort_message + 132
    frame #4: 0x000000018fc9ecc0 libc++abi.dylib`default_terminate_handler() + 304
    frame #5: 0x000000018fcac844 libobjc.A.dylib`_objc_terminate() + 124
    frame #6: 0x000000018fcac844 libobjc.A.dylib`_objc_terminate() + 124
    frame #7: 0x000000018fc9b66c libc++abi.dylib`std::__terminate(void (*)()) + 16
    frame #8: 0x000000018fc9b234 libc++abi.dylib`__cxa_rethrow + 144
    frame #9: 0x000000018fcac71c libobjc.A.dylib`objc_exception_rethrow + 44
    frame #10: 0x000000019114e0bc CoreFoundation`CFRunLoopRunSpecific + 560
    frame #11: 0x0000000192bd1198 GraphicsServices`GSEventRunModal + 180
    frame #12: 0x0000000197128628 UIKit`-[UIApplication _run] + 684
    frame #13: 0x0000000197123360 UIKit`UIApplicationMain + 208
  * frame #14: 0x00000001001e408c cya`main + 144 at AppDelegate.swift:19
    frame #15: 0x00000001901305b8 libdyld.dylib`start + 4

  thread #5: tid = 0x9c29d, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x000000019030536c libsystem_pthread.dylib`_pthread_wqthread + 1452
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #7: tid = 0x9c2a7, 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8, name = 'gputools.smt_poll.0x174036a80'
    frame #0: 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8
    frame #1: 0x000000019016027c libsystem_c.dylib`nanosleep + 212
    frame #2: 0x000000019016019c libsystem_c.dylib`usleep + 64
    frame #3: 0x000000010257deb0 GPUToolsCore`smt_poll_thread_entry(void*) + 136
    frame #4: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #5: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #6: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #8: tid = 0x9c2b2, 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8, name = 'gputools.smt_poll.0x1740366c0'
    frame #0: 0x0000000190242314 libsystem_kernel.dylib`__semwait_signal + 8
    frame #1: 0x000000019016027c libsystem_c.dylib`nanosleep + 212
    frame #2: 0x000000019016019c libsystem_c.dylib`usleep + 64
    frame #3: 0x000000010257deb0 GPUToolsCore`smt_poll_thread_entry(void*) + 136
    frame #4: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #5: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #6: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #9: tid = 0x9c2b6, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.apple.uikit.eventfetch-thread'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x0000000191c5cb1c Foundation`-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
    frame #6: 0x0000000191c7d60c Foundation`-[NSRunLoop(NSRunLoop) runUntilDate:] + 96
    frame #7: 0x0000000197a9dc7c UIKit`-[UIEventFetcher threadMain] + 136
    frame #8: 0x0000000191d5a50c Foundation`__NSThread__start__ + 1024
    frame #9: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #10: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #11: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #10: tid = 0x9c2b7, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x000000019030536c libsystem_pthread.dylib`_pthread_wqthread + 1452
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #12: tid = 0x9c2bf, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.apple.NSURLConnectionLoader'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x000000019193bcec CFNetwork`+[NSURLConnection(Loader) _resourceLoadLoop:] + 336
    frame #6: 0x0000000191d5a50c Foundation`__NSThread__start__ + 1024
    frame #7: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #8: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #9: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #14: tid = 0x9c2c3, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'AVAudioSession Notify Thread'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x00000001aa8f1fe8 AVFAudio`GenericRunLoopThread::Entry(void*) + 164
    frame #6: 0x00000001aa917f14 AVFAudio`CAPThread::Entry(CAPThread*) + 84
    frame #7: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #8: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #9: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #15: tid = 0x9c2cc, 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.squareup.SocketRocket.NetworkThread'
    frame #0: 0x000000019022416c libsystem_kernel.dylib`mach_msg_trap + 8
    frame #1: 0x0000000190223fdc libsystem_kernel.dylib`mach_msg + 72
    frame #2: 0x0000000191221cec CoreFoundation`__CFRunLoopServiceMachPort + 192
    frame #3: 0x000000019121f908 CoreFoundation`__CFRunLoopRun + 1132
    frame #4: 0x000000019114e048 CoreFoundation`CFRunLoopRunSpecific + 444
    frame #5: 0x0000000191c5cb1c Foundation`-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
    frame #6: 0x00000001003cd7ec cya`-[_FSRRunLoopThread main](self=0x0000000170097c00, _cmd=<unavailable>) + 252 at FSRWebSocket.m:1838
    frame #7: 0x0000000191d5a50c Foundation`__NSThread__start__ + 1024
    frame #8: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #9: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #10: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #16: tid = 0x9c2d8, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x000000019030536c libsystem_pthread.dylib`_pthread_wqthread + 1452
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #18: tid = 0x9c2e8, 0x000000019024223c libsystem_kernel.dylib`__select + 8, name = 'com.apple.CFSocket.private'
    frame #0: 0x000000019024223c libsystem_kernel.dylib`__select + 8
    frame #1: 0x0000000191228b84 CoreFoundation`__CFSocketManager + 640
    frame #2: 0x0000000190307860 libsystem_pthread.dylib`_pthread_body + 240
    frame #3: 0x0000000190307770 libsystem_pthread.dylib`_pthread_start + 284
    frame #4: 0x0000000190304dbc libsystem_pthread.dylib`thread_start + 4

  thread #19: tid = 0x9c355, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x0000000190305188 libsystem_pthread.dylib`_pthread_wqthread + 968
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #20: tid = 0x9c35f, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x000000019030536c libsystem_pthread.dylib`_pthread_wqthread + 1452
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4

  thread #21: tid = 0x9c360, 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #0: 0x0000000190242a88 libsystem_kernel.dylib`__workq_kernreturn + 8
    frame #1: 0x0000000190305188 libsystem_pthread.dylib`_pthread_wqthread + 968
    frame #2: 0x0000000190304db4 libsystem_pthread.dylib`start_wqthread + 4
(lldb) 
like image 387
David Seek Avatar asked Sep 30 '16 18:09

David Seek


1 Answers

The exception and stack trace tell you that the store view controller isn't happy about being pushed into a nav stack. Your test shows it is happy being presented. From the documentation:

present the view controller modally from another view controller in your app

So, you should present it modally.

While it's possible that you could perhaps make it work in some other way it's likely to break in the future if you don't follow the (inconvenient) guidelines.

like image 188
Wain Avatar answered Jan 02 '23 05:01

Wain