expo弹出后不能运行 IOS,只能看到白屏,怎么办?

Can't run IOS after expo eject, see only white screen, how to make it work?

我做了 expo 弹出,在 IOS 中安装了 pods,当我通过 Xcode 构建应用程序时,它说构建成功,但是,当 IOS 模拟器打开我只看到白屏和 Xcode

中的错误

" **libc++abi.dylib: terminating with uncaught exception of type NSException**"

,官方文档中也说了"Once it's running, the iOS app should automatically request your JS bundle from the project you're serving from Expo CLI.",但是没有任何反应!

如何解决这个问题?

这里是完整的错误堆栈:

* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x0000000110efa23e libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x0000000110f4dc1c libsystem_pthread.dylib`pthread_kill + 285
    frame #2: 0x0000000110cbcc45 libsystem_c.dylib`abort + 127
    frame #3: 0x0000000110a4a5b1 libc++abi.dylib`abort_message + 231
    frame #4: 0x0000000110a4a74d libc++abi.dylib`default_terminate_handler() + 265
    frame #5: 0x000000010e193a9d libobjc.A.dylib`_objc_terminate() + 97
    frame #6: 0x0000000110a5665e libc++abi.dylib`std::__terminate(void (*)()) + 8
    frame #7: 0x0000000110a566d3 libc++abi.dylib`std::terminate() + 51
    frame #8: 0x000000010e193a22 libobjc.A.dylib`objc_terminate + 9
    frame #9: 0x0000000110b61616 libdispatch.dylib`_dispatch_client_callout + 28
    frame #10: 0x0000000110b64b78 libdispatch.dylib`_dispatch_block_invoke_direct + 301
    frame #11: 0x0000000116965ba8 FrontBoardServices`__FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 30
    frame #12: 0x0000000116965860 FrontBoardServices`-[FBSSerialQueue _performNext] + 457
    frame #13: 0x0000000116965e40 FrontBoardServices`-[FBSSerialQueue _performNextFromRunLoopSource] + 45
    frame #14: 0x000000010f9e8721 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    frame #15: 0x000000010f9e7f93 CoreFoundation`__CFRunLoopDoSources0 + 243
    frame #16: 0x000000010f9e263f CoreFoundation`__CFRunLoopRun + 1263
    frame #17: 0x000000010f9e1e11 CoreFoundation`CFRunLoopRunSpecific + 625
    frame #18: 0x0000000111f4a1dd GraphicsServices`GSEventRunModal + 62
    frame #19: 0x0000000118e1581d UIKitCore`UIApplicationMain + 140
  * frame #20: 0x00000001054e9490 civic-champs`main(argc=1, argv=0x00007ffeea716ff8) at main.m:8
    frame #21: 0x0000000110bd7575 libdyld.dylib`start + 1
    frame #22: 0x0000000110bd7575 libdyld.dylib`start + 1

当我向应用程序添加异常断点时,我看到它在这行代码中停止:

很难说,因为堆栈跟踪非常有限,但听起来像是 this 错误。

根据 the comment,要解决它,您应该降级 cocoapods:

gem uninstall cocoapods
# Don't forget to press "Y" to remove executables
gem install cocoapods -v 1.5.3

我找到了解决方案,我认为问题是我在 pod install 之前没有 运行 expo start。我再次克隆了项目并在 expo start 之后做了 pod install,这个问题就消失了。