@monsoir/rn-archiver
v0.1.12
Published
需要提前在 Xcode 中配置好 iOS 原生项目的打包证书的设置,automactically manage sign
Downloads
3
Readme
README
需要提前在 Xcode 中配置好 iOS 原生项目的打包证书的设置,automactically manage sign
安装
npm i -D @monsoir/archiver
添加 scripts
"scripts": {
"start": "...",
"test": "...",
"archive-ios": "node ./node_modules/@monsoir/rn-archiver/dist/lib/index.js",
},
打包时,执行命令
npm run archive-ios
创建 .archiver.json
配置文件
.archive.json
例子,配置文件需要存放在与 package.json
同级的目录下,下面假设某个项目名为 Demo
{
"pathToWorkspace": "./ios/Demo.xcworkspace",
"scheme": "Demo",
"configuration": "Release",
"archivePath": "~/Desktop/Demo",
"exportPath": "~/Desktop/Demo",
"exportOptionsPlist": "./exportionsPlists/EnterpriseExportOptionsPlist.plist"
}
配置文件解释
执行命令开始
- 读取
pathToWorkspace
值,根据路径寻找 iOS 原生项目 - 使用
Release
方式,对项目中的scheme
进行打包 - 执行
xcodebuild archive
命令,并将 archive 后的文件输出到文件夹~/Desktop
, 并命名为Demo.xcarchive
, 因此,.xcarchive
后缀名是命令自动添加的,我们只需要精确到文件名 - 执行
xcodebuild -exportArchive
, 根据archivePath
中的值,获取到 archive 后的文件,同时,根据exportPath
来指定Demo.ipa
导出的位置,根据exportOptionsPlist
读取打包的方法,最后,Demo.ipa
包含在~/Desktop/Demo
文件夹下
archivePath
, 指定的是一个文件的名称,精确到文件名,不需要后缀名exportPath
, 指定的是一个文件夹的名称
.archive.json
文件配置选项,
pathToWorkspace
对于使用 React Native 的 iOS 项目,几乎使用的都是 CocoaPods, 因此,项目的入口都应该是Demo.workspace
, 值需要包括workspace
后缀scheme
进行打包的 scheme, 一般为Demo
configuration
打包的配置Release
默认DEBUG
archivePath
archive 文件的保存路径,这是中间产物,默认为./{scheme}
exportPath
应用打包后的导出路径,其中包含了Demo.ipa
文件,默认为./archived
exportOptionsPlist
用于配置打包发布的形式,没有默认值AdHocExportOptionsPlist.plist
测试包AppStoreExportOptionsPlist.plist
App StoreEnterpriseExportOptionsPlist.plist
企业级