React-Native 打包记录

网上RN项目的离线打包教程如下:

RN项目的离线打包(ios) -

但是这样打出来的的api文件会有2个assets资源文件


React-Native 打包记录_第1张图片
图1
React-Native 打包记录_第2张图片
图2

这样两个assets里面的资源都是一样的,导致api文件会大好多。下面是解决方法


React-Native 打包记录_第3张图片
图3

只要把main.jsbundle替换index.ios.jsbundle就行了

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  NSURL *jsCodeLocation;
#ifdef DEBUG
  //开发包
  jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
#else
  //离线包

//jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"bundle/index.ios" withExtension:@"jsbundle"];

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

#endif

只要将上面那句替换成下面这句就行了。

}


React-Native 打包记录_第4张图片
图4


React-Native 打包记录_第5张图片
图5


React-Native 打包记录_第6张图片
图6

如果项目中没有main.jsbundle下面链接是生存方法

RN-生成 main.jsbundle -

在此记录一下。

你可能感兴趣的:(React-Native 打包记录)