I'm trying to enable Live Reload mode, but there is no such item in Dev Menu:

- 2,047
- 1
- 25
- 30
-
It's weird. What version of xcode and react-native your running? – abeikverdi Aug 04 '16 at 16:45
-
Related: http://stackoverflow.com/questions/38676746/after-upgrade-livereload-missing-on-real-device-cannot-debug-js-remotely-from-r – Kyle Finley Aug 04 '16 at 17:33
-
react-native-cli: 1.0.0 react-native: 0.30.0 Xcode 7.3.1 (7D1014) Watchman 4.6.0 – protspace Aug 05 '16 at 07:11
-
Finally fixed that. See http://stackoverflow.com/questions/38676746/after-upgrade-livereload-missing-on-real-device-cannot-debug-js-remotely-from-r – protspace Aug 05 '16 at 08:29
-
Hey @protspace make it as actual answer if it works for you. it will help others. – Ashok R Jan 05 '17 at 03:00
6 Answers
You have this problem is mainly because your device and your development machine is not in the same LAN. check if it is. Make sure your computer and your device connected in the save LAN, everything will be ok.
After all ur devices connected to the same LAN. And if u are using Xcode.
- Close the React Native packager (or just close the terminal window)
- Delete the app in your iOS device
- Clean Xcode project.
- Run command
npm start -- reset-cache
Then everything will be OK.

- 4,177
- 3
- 28
- 26
-
1This one got me. I had multiple WIFIs around and my iPhone and MBP were bouncing to different ones while working and I didn't even realize. – dwilt Feb 15 '17 at 08:00
-
@dwilt sometimes just connect to the same LAN can not solve this problem. So i updated my answer. – Bruce Lee Feb 15 '17 at 08:21
-
just switching to the same Wi-Fi worked for me ......Thanks @Bruce Lee – Akhilesh Sinha Dec 07 '17 at 17:30
You need to edit the source for jsCodeLocation
from your AppDelegate.
The main problem that the
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];
is looking for localhost
by default, in simulator it will work as simulator and pc are on the same machine, but for device localhost
will be different so to make it work, you need to change that line to
jsCodeLocation = [NSURL URLWithString:@"http://192.168.1.16:8081/index.ios.bundle?platform=ios&dev=true&minify=false&hot=true"];
here 192.168.1.16
change it to your PC local IP address

- 2,881
- 1
- 23
- 35
-
2Projects created with v0.49 or later should use `jsCodeLocation = [NSURL URLWithString:@"http://192.168.1.16:8081/index.bundle?platform=ios&dev=true&minify=false&hot=true"];`, since [new projects have a single entry-point](https://github.com/facebook/react-native/releases/tag/v0.49.0). – mthmulders Nov 04 '17 at 14:21
If u are using IOS Simulator, follow the menu Hardware > Shake Gesture
, and click the Enable Live Reload
option.
Hope it helps! :)

- 558
- 4
- 7
In my case, I had a local ethernet connection that was taking priority on en0, so I had to change the script at:
node_modules/react-native/react-native-xcode.sh
from
IP=$(ipconfig getifaddr en0)
to
IP=$(ipconfig getifaddr en1)
since my wifi was on that port.
Verify that with terminal: networksetup -listallhardwareports
All this I learned from the following blog post:
https://www.stevetrefethen.com/blog/react-native-bundle-loading-failing-on-a-physical-device
Thanks Steve Trefethen!
I'm not sure what the permanent solution should be, but it seems the script should be checking for wifi only connections somehow.

- 12,519
- 4
- 28
- 27
If you are running the app on your actual native device. Then shake the device and it will pop up the me menu.

- 4,924
- 7
- 43
- 65
-
as you can see above I made a screenshot of that menu and there is no such item in it @Shivam Sinha – protspace Aug 05 '16 at 07:06
-
-
This is totally unrelated to the question. He asks how to get a normal menu with Live reload. – ivan133 Jan 31 '19 at 12:32