无法在 iOS 模拟器中启动 Chrome DevTools
Posted
技术标签:
【中文标题】无法在 iOS 模拟器中启动 Chrome DevTools【英文标题】:Can't launch Chrome DevTools in iOS simulator 【发布时间】:2015-06-01 14:48:07 【问题描述】:使用v8.2模拟器,Cmd+D总是显示如下错误提示
[RCTLog][tid:0x7fcc2bf4cb90][RCTRootView.m:68]>WebSocket debugger is not available. Did you forget to include RCTWebSocketExecutor?
【问题讨论】:
请参阅"Should questions include “tags” in their titles?",其中的共识是“不,他们不应该”! 谢谢!这是我第一次发布问题。下次我会注意的。 【参考方案1】:可能类似于这个问题:
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,如果它有效:)
【讨论】:
感谢您的回复。这些问题和我的不一样。我找到了根本原因:) 太棒了!勾选你自己问题的答案,然后其他人就会知道去哪里看!【参考方案2】:在尝试了很多不同的方法来解决这个问题后,我终于找到了根本原因。
为了使用 Chrome DevTool 调试,ios 项目需要导入库 RCTWebSocketDebugger.xcodeproj
和 libicucore.dylib
。
在 react-native 示例中,2048
、Movies
、TicTacToe
不会导入这两个库。这就是为什么它总是显示错误消息“WebSocket 调试器不可用。您是否忘记包含 RCTWebSocketExecutor?”在控制台中。
-
按
+
> Add Other...
> <REACT_NATIVE_ROOT>/Libraries/RCTWebSocketDebugger/RCTWebSocketDebugger.xcodeproj
按+
> 搜索RCTWebSocketDebugger.a
> Add
按+
> 搜索libicucore.dylib
> Add
在 Xcode 中按 ⌘ + R 运行项目
打开Chrome URL http://localhost:8081/debugger-ui
在 iOS 模拟器中按 ⌘ + D 启用调试
【讨论】:
以上是关于无法在 iOS 模拟器中启动 Chrome DevTools的主要内容,如果未能解决你的问题,请参考以下文章
iOS 启动图像在 Dev 中有效,但在 App Store 版本中无效