React-Native之打包发布(Android)

React-Native之打包发布(Android)

一,介绍与需求

 移动端打包发布到应用市场node

二,发布配置

注意:如下全部操做都在win10下进行,React Native版本0.59.5,android-studio 版本 3.2react

1,生成签名

1 keytool -genkey -v -keystore app.keystore -alias yingqi -keyalg RSA -keysize 2048 -validity 10000

附加说明:android

-genkey    生成文件 ios

-keystore  文件名 算法

-alias         别名react-native

-keyalg     加密算法android-studio

-validity    有效期(单位是天) app

输入如上命令之后,出现如下步骤:工具

注意:输入密钥库口令【很重要,要记住】测试

生成的的keystore文件默认是在项目的根目录中,以下图所示:

 

2,在gradle文件中添加签名配置

把app.keystore文件放到你工程中的android/app文件夹下。

打开编辑项目目录下的android/app/build.gradle文件,添加以下的签名配置:

 1 ...
 2 android {
 3     ...
 4     defaultConfig { ... }
 5     signingConfigs {
 6         release {
 7             keyAlias 'yingqi' //别名
 8             keyPassword '123456' //密钥密码 以前设置秘钥口令
 9             storeFile file('app.keystore') //my-release-key.keystore文件的绝对路径
10             storePassword '123456' //存储密码
11         }
12     }
13     buildTypes {
14         release {
15             ...
16             minifyEnabled enableProguardInReleaseBuilds // 在 当前文件中,找到变量 enableProguardInReleaseBuilds ,将其值修改成 true
17             signingConfig signingConfigs.release // 引用签名
18         }
19     }
20 }
21 ...

 3,修改应用名称

打开编辑项目目录下的android/app/src/main/res/values/strings.xml文件,修更名称

 4,修改应用icon

将以下文件夹中的icon替换成须要修改的图标便可,注意icon大小保持一致

 5,代码混淆

启用Proguard代码混淆来缩小APK文件的大小(保护源代码,缩小APK包大小)
Proguard是一个Java字节码混淆压缩工具,它能够移除掉React Native Java (和它的依赖库中)中没有被使用到的部分,最终有效的减小APK的大小。
重要:每次启用Proguard以后,必须再次全面地测试你的应用。Proguard有时候须要为你引入的每一个原生库作一些额外的配置。参见app/proguard-rules.pro文件。

在android/app/build.gradle文件中,找到enableProguardInReleaseBuilds而后修改def enableProguardInReleaseBuilds = true

 6,打包命令配置

1   "scripts": {
2     "start": "node node_modules/react-native/local-cli/cli.js start",
3     "bundle-ios": "node node_modules/react-native/local-cli/cli.js bundle --entry-file index.js  --platform ios --dev false --bundle-output ./ios/main.jsbundle --bundle-encoding utf8 --assets-dest ./ios",
4     "bundle-android": "cd ./android && ./gradlew assembleRelease",
5     "bundle-win-android": "cd android && gradlew assembleRelease",
6     "test": "jest"
7   },

运行打包与成功效果

相关文章
相关标签/搜索