无法在iOS模拟器中启动Chrome DevTools

时间:2015-03-28 07:40:57

标签: react-native

使用v8.2模拟器, Cmd + D 始终显示以下错误消息

[RCTLog][tid:0x7fcc2bf4cb90][RCTRootView.m:68]>WebSocket debugger is not available. Did you forget to include RCTWebSocketExecutor?

2 个答案:

答案 0 :(得分:4)

最后,在我尝试了许多不同的方法来解决这个问题之后,我找到了根本原因。

要使用Chrome DevTool进行调试,iOS项目需要导入库RCTWebSocketDebugger.xcodeprojlibicucore.dylib

在本机反应示例中,2048MoviesTicTacToe不会导入这两个库。这就是为什么它总是显示错误消息" WebSocket调试器不可用。你有没有忘记加入RCTWebSocketExecutor?"在控制台中。

enter image description here

  1. +&gt; Add Other...&gt; <REACT_NATIVE_ROOT>/Libraries/RCTWebSocketDebugger/RCTWebSocketDebugger.xcodeproj
  2. +&gt;搜索RCTWebSocketDebugger.a&gt; Add
  3. +&gt;搜索libicucore.dylib&gt; Add
  4. 在Xcode中按⌘+ R 运行项目
  5. 打开Chrome网址http://localhost:8081/debugger-ui
  6. 在iOS模拟器中按⌘+ D 启用调试

答案 1 :(得分:0)

可能与此问题类似:

https://github.com/facebook/react-native/issues/311

这里也提到了:

https://github.com/facebook/react-native/issues/297

看起来React Native无法连接到Chrome调试器这一事实可能是一个糟糕的错误消息。第一个链接有一个可能的解决方法:

In RCTWebSocketExecutor.m:
- (instancetype)init
{
return [self initWithURL:[NSURL URLWithString:@"http://localhost:8081/debugger-proxy"]];
}
  

这可以防止远程调试。如果我手动将其更改为我的   计算机的IP,我可以使用Chrome检查器进行调试。

如果有效,则归功于https://github.com/ckknight:)