19

我正在使用 React-Native,当我使用 Xcode 和 iPhone 模拟器运行 AwesomeProject 时,一切正常,但是当我连接我的 iPad 并在我的 iPad 上构建项目时,我在应用程序启动时在 iPad 上收到一个错误:

“无法连接到开发服务器。确保节点服务器正在运行。操作无法完成(NSURLErrorDomain 错误 -1004)”。

我还确保节点包正在运行。我什至重新启动了 Xcode,并通过运行 npm start 重新开始。

你能帮忙吗?

4

5 回答 5

31

在您的 AppDelegate.m 上,您必须更新jsCodeLocation并替换localhost为您的机器 IP 地址。

或者将编译后的源代码捆绑到您的应用程序中,这也被注释为选项 2 AppDelegate.m。您下载编译后的代码,并将其添加到您的 Xcode 项目中。

于 2015-03-27T17:47:34.567 回答
4

尝试在这里查看解决方案:

https://github.com/facebook/react-native/issues/240#issuecomment-86977126

于 2015-03-27T17:46:11.357 回答
4

另一个可能导致完全相同错误的潜在问题是 iOS9 中的 App Transport Security (ATS)——这发生在我身上,即使其他所有设置都正确。在https://stackoverflow.com/a/34880394/2397068上查看我的描述和解决方案。

于 2016-01-19T15:19:05.403 回答
4

我准备了一个小说明,这将有助于解决这个问题。

当您的应用程序无法连接到服务器时,您将看到如下消息:

在此处输入图像描述

在 Xcode 项目中打开文件 AppDelegate.m 并查找

jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"];

您必须将此地址替换为您的本地地址。

在此处输入图像描述

要在 Mac OS X 中查找您的本地 IP 地址,请打开终端应用程序(位于 /Applications/Utilities 中)并键入ipconfig getifaddr en1无线或ipconfig getifaddr en0以太网。

在此处输入图像描述

您可以在浏览器中查看。你会看到 React Native Debugger 页面

在此处输入图像描述

只需将localhostAppDelegate.m 中的替换为您的 IP 地址。localhost192.168.1.100我的情况下。

在此处输入图像描述

再次在 Xcode 中运行您的应用程序。

于 2016-04-17T13:01:06.167 回答
0

就我而言,我刚刚安装了一个非常旧的 node.js 版本(版本 0.8.6)。将 node.js 更新到 0.12.2 版本后,react-native init AwesomeProject创建的默认项目运行良好。

于 2015-04-09T17:22:03.690 回答