一、进入你所安装的java---jdk---bin目录下(不记得目录的可以去环境变量中查看)如下图
二、输入命令
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize2048-validity10000
之后会让你输入相关信息,需要注意的是“输入密钥库口令”和“再次输入新口令”这两项在输入时都是不显示的,输入完直接按Enter键即可,两次输入的需要一样,若不一样会让你重新输入,其他信息按自己的来填就好,如图
执行完以上的相关目录后会在你的java---jdk---bin目录下生成一个XXXXXX.keystore的文件,将这个文件拿到需要打包的工程的android/app目录下
三、打开工程android下的gradle.properties文件,在文件中加入如下语句
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=******
MYAPP_RELEASE_KEY_PASSWORD=******
语句中的*即为第一步中设置的“输入密钥库口令”和“再次输入新口令”
四、打开工程android/app/build.gradle文件,添加如图圈出来的代码
需要添加的代码为:
将原文的def enableProguardInReleaseBuilds = false改成def enableProguardInReleaseBuilds = true
signingConfigs {
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}}
signingConfig signingConfigs.release
对着图片的位置添加即可
五、将终端的路径切换到工程的android目录下,执行如下命令进行打包
cmd:执行gradlew assembleRelease
powershell:执行./gradlew assembleRelease
六、混淆压缩失败报错的处理
执行打包命令后会报 Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'的错
解决:在 android/app/proguard-rules.pro 文件的最后添加-ignorewarnings -keep class* { public private*; }即可
七、打包成功后终端会显示BUILD SUCCESSFUL
在android/app/build/outputs/apk目录下下可以找到打包好的apk文件
八、若想修改apk的名字可直接改成你需要的名字即可,如下图;相关配置做好后,后期重新打包只需要运行打包命令即可