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

一、进入你所安装的java---jdk---bin目录下(不记得目录的可以去环境变量中查看)如下图

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第1张图片

二、输入命令

keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize2048-validity10000

之后会让你输入相关信息,需要注意的是“输入密钥库口令”和“再次输入新口令”这两项在输入时都是不显示的,输入完直接按Enter键即可,两次输入的需要一样,若不一样会让你重新输入,其他信息按自己的来填就好,如图

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第2张图片

执行完以上的相关目录后会在你的java---jdk---bin目录下生成一个XXXXXX.keystore的文件,将这个文件拿到需要打包的工程的android/app目录下

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第3张图片
react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第4张图片

三、打开工程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文件,添加如图圈出来的代码

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第5张图片

需要添加的代码为:

将原文的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

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第6张图片

在android/app/build/outputs/apk目录下下可以找到打包好的apk文件

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第7张图片


八、若想修改apk的名字可直接改成你需要的名字即可,如下图;相关配置做好后,后期重新打包只需要运行打包命令即可

react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua..._第8张图片

你可能感兴趣的:(react-native 打包apk 详细步骤及报错 Execution failed for task ':app:transformClassesAndResourcesWithProgua...)