离线打包的详细步骤
- 生成专用签名密钥keytool,需要先找到jdk的路径JDK bin文件夹
- 输入指令
echo $JAVA_HOME
- cd到bin的文件夹执行指令
sudo keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000 - 添加一些信息和设置秘钥的密码
如图所示秘钥文件已经在bin文件夹中生成
MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias
MYAPP_UPLOAD_STORE_PASSWORD=*****
MYAPP_UPLOAD_KEY_PASSWORD=*****
- 签名配置添加到应用程序的Gradle配置,编辑android/app/build.gradle添加以下代码
- 在这个代码下添加
lintOptions {
checkReleaseBuilds false
abortOnError false
}
release {
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
- 在后面添加一句代码
signingConfig signingConfigs.release
-
先
cd android在执行打包指令./gradlew bundleRelease -
打包后的压缩包放在
android/app/build/outputs/bundle/release/app.aab -
执行指令
npx react-native run-android --variant=release可以将打包的APK安装在真机上