6

使用 v8.2 模拟器,Cmd+D总是显示以下错误信息

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

2 回答 2

5

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

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

在 react-native 示例中,2048, Movies,TicTacToe不会导入这两个库。这就是为什么它总是显示错误消息“WebSocket 调试器不可用。您是否忘记包含 RCTWebSocketExecutor?” 在控制台中。

在此处输入图像描述

  1. +> Add Other...><REACT_NATIVE_ROOT>/Libraries/RCTWebSocketDebugger/RCTWebSocketDebugger.xcodeproj
  2. +> 搜索RCTWebSocketDebugger.a>Add
  3. +> 搜索libicucore.dylib>Add
  4. ⌘ + RXcode 运行项目
  5. 打开 Chrome 网址http://localhost:8081/debugger-ui
  6. 在 iOS 模拟器中按下⌘ + D以启用调试
于 2015-04-03T18:28:53.173 回答
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 :)

于 2015-03-28T12:07:33.483 回答