React Native打包

一、iOS打包

1、RN环境配置:

# 进入项目目录

cd AwesomeProject

将命令添加进项目的package.json文件的scripts字段中

"scripts": {

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

  }

参数说明:

--entry-file ios或者android入口的js名称,比如index.js

--platform平台名称(ios或者android)

--dev设置为false的时候将会对JavaScript代码进行优化处理。

-- -output 生成的jsbundle文件的名称,比如./ios/bundle/main.jsbundle

--assets-dest图片以及其他资源存放的目录,比如./iOS/bundle

配置完成后

cd  ios //进入当前项目文件,进入ios文件夹

mkdir  bundle    //创建bundle文件夹

打包直接运行npm run bundle-ios

2、Xcode打包

打开iOS工程文件

新增bundle到iOS项目ZLDemo中

选中Xcode项目,鼠标右键选中Add Files to "ZLDemo"添加bundle。

完成后基本所有配置都完成了,之后就是进行iOS在Xcode中配置。

1.1、证书配置

1.2、release配置

1.3、正常Xcode打包流程

1.4、发包自测

备注Xcode打包有问题可以留言一起解决。

问题一、

问题二、ld: library not found for -lCocoaAsyncSocket

问题三、ENOENT: no such file or directory open ./ios/bundle/index.ios.jsbundle

缺少 bundle文件,新建。

cd  ios //进入当前项目文件,进入ios文件夹

eg:cd /Users/apple/Desktop/ZLDemo/ZLDemo/ios

mkdir  bundle    //创建bundle文件夹

cd ..    //进入上一文件夹(当前项目文件夹)

配置好package.json文件,具体见上边

npm run bundle-ios 

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

二、Android打包

后期更新

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