签名
首先,需要按照官方文档的步骤对app进行签名。
尝试打包
cd android
进入安卓工程目录 ./gradlew assembleRelease
开始打包
这里可能会卡在:app:bundleReleaseJsAndAssets这个状态一直不动,这个时候直接control + c 放弃打包
首先我们在项目根目录下执行react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output App/src/main/assets/index.android.bundle --assets-dest App/src/main/res/
注意:
- 需要在根目录执行
- 根据版本不同,如果入口配置文件不是index.android.js,就改为相应的入口文件名,比如‘index.js’
- output的目录应为安卓的目录下,去生成index.android.bundle文件,如果目录因版本变化就修改为对应的路径
重新打包
处理好上面的步骤后,我们进入安卓的工程目录下,输入./gradlew assembleRelease -x bundleReleaseJsAndAssets
尝试打包。
代码更新了APP没有变化?
这时我们应该发现APP已经打包成功了,但是安装在手机上后发现代码没有更新,这是因为每次打包前都需要生成一个新的index.android.bundle文件,这时我们需要进入安卓工程目录,进到/src/main/assets
下删除旧的index.android.bundle文件,在重复执行react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output App/src/main/assets/index.android.bundle --assets-dest App/src/main/res/
这个步骤,再尝试打包即可