RN-iOS打包真机测试

网上也有不少教程,我这里只是自己做个记录,此处不行再去网上找寻

第一步,终端cd到项目目录,执行命令

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

RN-iOS打包真机测试_第1张图片
9EDC1C20-B04E-40C2-8DA3-A3FDEB1D47F9.png

上面有一个错误,说是找不到ios/bundle目录,上面的命令是把index.ios.jsbundle放在了ios/bundle文件夹下,命令不能自动的创建,只能自己手动创建bundle文件夹

注:

--entry-file ,ios或者android入口的js名称,比如index.ios.js
--platform ,平台名称(ios或者android)
--dev ,设置为false的时候将会对JavaScript代码进行优化处理。
--bundle-output, 生成的jsbundle文件的名称,比如./ios/bundle/index.ios.jsbundle
--assets-dest 图片以及其他资源存放的目录,比如./ios/bundle

执行完以后再bundle里面会发现三个文件

RN-iOS打包真机测试_第2张图片
329CA80B-FB95-46D7-A08F-5178384F64C3.png

第二步,导入生成的文件到XCode

RN-iOS打包真机测试_第3张图片
C43C97B4-EA6A-4C74-9273-46727E6235C0.png

注意导入的方式(如图)。

第三步,设置appDelegate.m


  //模拟器测试
//  jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];

  //打包手机测试,改成访问本地的js服务器
  jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"index.ios" withExtension:@"jsbundle"];

第四步,完成

这个时候就可以build了

build时选择debug/release版本进行测试

你可能感兴趣的:(RN-iOS打包真机测试)