打包构建apk/ipa
打包Andorid App 与 IOS App
本文档将详细描述如何在公司框架体系下打包Android App 与 IOS App
APP的打包简单分为两步:
- Build JS Bundle 打包js代码
- Build Native Application 将js代码一起打包成原生应用。ios为ipa 安卓为apk文件
注意
如果你的项目是壳工程模式。请阅读此处
Build Bundle
当你需要打包App的时候。你需要首先在项目中先打包JS Bundle。相关命令会将APP用到的Bunlde资源分发到对应的位置。然后再进行原生应用的打包。
打包Bundle的命令如下。当命令执行完毕之后。进行下一步Build App
bash
npm run build:android // 打包Android Bundle
npm run build:ios // 打包IOS Bundle
npm run uat:android // 打包Android Bundle UAT环境
npm run uat:ios // 打包IOS Bundle UAT环境
相关配置在根目录的config文件夹下的index.js文件中。相关配置如下
js
// ...其他配置
rn: {
appName: 'taroDemo',
output: {
iosSourceMapUrl: '', // sourcemap 文件url
iosSourcemapOutput: resolve('../ios/main-ios.map'), // sourcemap 文件输出路径
iosSourcemapSourcesRoot: '', // 将 sourcemap 资源路径转为相对路径时的根目录
androidSourceMapUrl: '',
androidSourcemapOutput: resolve('../android/app/src/main/assets/index.android.map'),
androidSourcemapSourcesRoot: '',
ios: resolve('../ios/main-ios.jsbundle'),
iosAssetsDest: resolve('../ios'),
android: resolve('../android/app/src/main/assets/index.android.bundle'),
androidAssetsDest: resolve('../android/app/src/main/res')
}
}
Build APP
IOS
IOS需要通过XCode进行打包
本处仅针对关键路径做描述
配置 release scheme
要配置 app 为使用Release scheme 编译,请前往Product → Scheme → Edit Scheme。选择侧边栏的Run标签,然后设置下拉的 Build Configuration 为Release执行
Product
-Archive
进行构建.
**ps:** 如果你的选项是灰色的。你需要把构建选择为**Any IOS Device**
Archive完成之后。会出现发布页面。你可以进行部署测试了
后续的处理按照IOS正常发布即可
IOS Build 解析
bash
# 1.在项目根目录下执行
# 命令执行后。会在ios 中输出一些bundle文件
# ios/ReactBundle/*
yarn build:ios
用Xcode打开ios工程 并 打包
Android
请务必看完 taro 文档 与签名相关的内容
有两种方式打包Android App
命令构建
在项目根目录下执行npm run release:android
命令. 命令运行完毕后会在android/app/build/outputs/apk
目录下生成apk文件。然后将apk文件安装到手机上即可。使用Android Studio进行构建
安装Android Studio。然后打开android目录下的项目。然后在Android Studio中进行打包。
安卓Build解析
bash
# 1.在项目根目录下执行
# 命令执行后。会在android 中输出一些bundle文件
# android/app/src/main/assets/index.android*
# android/app/src/main/res/drawable-*/*.png
# android/app/src/main/res/raw/*.ttf
yarn build:android
# 打包安卓包 相当于
# cd android
# ./gradlew clean // (非必须)
# ./gradlew assembleRelease
yarn release:android
// 2.1或者你也可以用androidStudio 打包
// 3.构建完成之后会输出文件
android/app/build/outputs/apk/release/app-release.apk
// 4.安卓安装包 (或者手动装)
adb install path/to/app-release.apk