在测试我的Android应用时,我可以选择在开发和开发之间加载生产包。
有谁知道你是否可以为IOS做同样的事情?我已经在Xcode中更改了构建方案以便发布,但它仍在加载开发包。
任何人都知道怎么做?
答案 0 :(得分:3)
要加载正确的文件,您实际需要在Xcode中编辑AppDelegate.M文件。此处的代码将检查构建设置是否为debug(因此它加载网络文件)或release(加载本地bundle)
#ifdef DEBUG
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
#else
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
#endif
在设置jsCodeLocation之前,您需要生成正确的文件。您可以使用以下命令执行此操作:
node node_modules/react-native/local-cli/cli.js bundle --entry-file='index.ios.js' --bundle-output='./ios/YourApp/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios'
这会将main.jsbundle放在ios文件夹中(我假设你的反应原生项目的根目录)
完成上述步骤后,您可以构建和部署您的应用并尝试一下:)
标记