react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua...

一、进入你所安装的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的名字可直接改成你需要的名字即可,如下图;相关配置做好后,后期重新打包只需要运行打包命令即可

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容