How to build .ipa for React Native? How to build .ipa for React Native? ios ios

How to build .ipa for React Native?


First, you need to create a bundle this way :

react-native bundle --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle --platform ios

Then, you have to comment this line in AppDelegate.m :

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

and uncomment this one :

jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];

Then you have to go for Product -> Archive in Xcode and follow the steps based on your desired release


You have to set Scheme to Release.

From docs you have two ways.

To do this, go to Product → Scheme → Edit Scheme (cmd + <), make sure you're in the Run tab from the side, and set the Build Configuration dropdown to Release.

or

You can also use the React Native CLI to perform this operation using the option --configuration with the value Release (e.g. react-native run-ios --configuration Release).

Then you can generate your archive as usual.

https://facebook.github.io/react-native/docs/running-on-device.html#building-your-app-for-production


i cannot comment on the above answer,it is correct but you need to start with the following command in order for it to work:

react-native bundle --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle --platform ios

the difference is 'ios' instead of 'iOS'

if not it will give the following error:

ProjectPath/node_modules/promise/lib/done.js:10  throw err;  ^