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
,这个问题就消失了。
我做了 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
,这个问题就消失了。