React native is tricky. It's tricky because there aren't hundreds of stack overflow questions describing every small problem you might encounter. When I was getting started, I'd often find my app was launching from a pre-bundled file and I wouldn't know how to fix it:
$ react-native bundle --platform ios --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle
// Development jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil]; // Production jsCodeLocation = [[NSBundle mainBundle] URLForResource: @"main" withExtension: @"jsbundle"];
Whether a pre-bundled file will actually be generated, and whether your app will have access to the in-app development menu depends on the build configuration of your app. You can switch the build configuration between Debug and Release from the Edit Schemes menu.
So that makes two things you need to change when you go from development to production builds: AppDelegate, and your build configuration.
Hope this helps.