Administrator
Administrator
Published on 2025-06-02 / 3 Visits
0
0

构建&生产

0).如果使用CNG

如果用了blank模版(项目中没有android目录)则先在项目根目录中执行命令:

npx expo prebuild

1).生成上传密钥

expo项目根目录中执行命令:

#macOS
sudo keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

#windows
keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

过程中会要求输入密码,需要记下这个密码

2).添加配置内容

打开android/gradle.properties文件,将以下内容添加到最后,并且*****修改成生成上传密钥时填写的密码

MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore     # Path to the "keystore.jks" file
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias                # Replace with value of the `keystore.keyAlias` field in the credentials.json file
MYAPP_UPLOAD_STORE_PASSWORD=*****                  # Replace with value of the `keystore.password` field in the credentials.json file
MYAPP_UPLOAD_KEY_PASSWORD=*****                    # Replace with value of the `keystore.keyPassword` field in the credentials.json file

打开android/app/build.gradle文件,将release代码块添加到android->signingConfigs代码块内

android {
    //......
    signingConfigs {
        debug { //原有的
            storeFile file('debug.keystore')
            storePassword 'android'
            keyAlias 'androiddebugkey'
            keyPassword 'android'
        }
        release { //新增代码块
            if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
                storeFile file(MYAPP_UPLOAD_STORE_FILE)
                storePassword MYAPP_UPLOAD_STORE_PASSWORD
                keyAlias MYAPP_UPLOAD_KEY_ALIAS
                keyPassword MYAPP_UPLOAD_KEY_PASSWORD
            }
        }
    }

}

3).构建

cd android
&
gradlew assembleRelease


Comment