2016-08-04 92 views
7

我试图让现场刷新模式,但在开发菜单没有这样的项目: no item called 'Live Reload'如何在运行React Native应用程序的iOS设备中启用Live Reload?

+0

这很奇怪。什么版本的xcode和反应 - 你的运行本身? – abeikverdi

+0

相关:http://stackoverflow.com/questions/38676746/after-upgrade-livereload-missing-on-real-device-cannot-debug-js-remotely-from-r –

+0

react-native-cli:1.0.0 react-native:0.30.0 Xcode 7.3.1(7D1014)Watchman 4.6.0 – protspace

回答

-1

如果您运行的实际本地设备上的应用程序。然后摇动设备,它会弹出我的菜单。

+0

正如你在上面看到的那样,我做了一个菜单的截图,里面没有这样的项目@Shivam Sinha – protspace

+0

这不是问题所在。 –

10

你有这个问题主要是因为你的设备和你的开发机器不在同一个LAN中。检查它是否是。确保您的电脑和您的设备连接在局域网中,一切都会好的。

毕竟所有的设备连接到同一个LAN。如果你使用Xcode。

  1. 关闭阵营本地打包(或直接关闭终端窗口)
  2. 删除该应用程序在您的iOS设备
  3. 清洁的Xcode项目。
  4. 运行命令npm start -- reset-cache

然后一切都会好的。

+0

这个人找到了我。我有多个WIFI,我的iPhone和MBP在工作时反弹到不同的阶段,而我甚至没有意识到。 – dwilt

+0

@dwilt有时候只是连接到同一个局域网无法解决这个问题。所以我更新了我的答案。 –

+0

只是切换到相同的Wi-Fi为我工作......谢谢@Bruce李 –

3

您需要从AppDelegate编辑jsCodeLocation的源代码。

jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];

正在寻找localhost默认的主要问题,在模拟器也将作为仿真器和PC在同一台机器上,但对于设备localhost将是不同的,所以使它的工作,你需要到该行更改为

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

这里192.168.1.16将其更改为您的PC LOCA l IP地址

+0

使用v0.49或更高版本创建的项目应该使用'jsCodeLocation = [NSURL URLWithString:@“http://192.168.1.16: 8081/index.bundle?platform = ios&dev = true&minify = false&hot = true“];',因为[新项目只有一个入口点](https://github.com/facebook/react-native/releases/tag/ v0.49.0)。 – mthmulders

相关问题