Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to enable Live Reload in iOS Device running React Native app?

Tags:

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

like image 731
protspace Avatar asked Aug 04 '16 16:08

protspace


2 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.

  1. Close the React Native packager (or just close the terminal window)
  2. Delete the app in your iOS device
  3. Clean Xcode project.
  4. Run command npm start -- reset-cache

Then everything will be OK.

like image 98
Bruce Lee Avatar answered Sep 22 '22 16:09

Bruce Lee


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

like image 28
Mohamed Saleh Avatar answered Sep 21 '22 16:09

Mohamed Saleh