1.文档说明
文档日期 2018/04/016
react-native版本:0.55.2
2.打包步骤
(一)Android签名文件生成
使用java工具keytool.exe生成签名文件,命令如下:
keytool -genkey -v -keystore my-release-key.keystore -alias -key-alias -keyalg RSA -keysize 2048 -validity 10000
标记红色的可以改,-release-key是签名文件名 alias 是别名是你将来为应用签名时所需要用到的,所以记得记录这个别名。
打开cmd,你想生成的签名文件存在哪个路径下,那么久切换到哪里,我的秘钥文件存储在D:\appkey下,命令行如下:
然后再使用keytool命令,如上命令,输入如下图:
回车(当然前提是你已经安装java环境并配置环境变量):完成这个命令的执行,我们需要填写:
(二)、配置gradle全局变量
1.Windows配置
2.mac配置
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****
如下:
(三)给目添加签名
现在我们的条件准备好了,就是以上两个步骤:
现在我们把
签名文件my-release-key.keystore放在我们的react native项目的android\app下,如下图示:
然后编辑项目目录下的android/app/build.gradle,添加如下的签名配置:
... android { ... defaultConfig { ... } signingConfigs { release { storeFile @H_392_301@file(MYAPP_RELEASE_STORE_FILE) storePassword MYAPP_RELEASE_STORE_PASSWORD keyAlias MYAPP_RELEASE_KEY_ALIAS keyPassword MYAPP_RELEASE_KEY_PASSWORD } } buildTypes { release { ... signingConfig signingConfigs.release } } } ...
(四)、生成带签名的APK包
执行如下两个命令
$ cd android && ./gradlew assembleRelease
分解执行:
$ cd android
会在android\app\build\outputs\apk路径下生成app-release.apk,这个就是要发布的apk$ gradlew assembleRelease
如果想重新再更新发布,你可以先使用
gradlew clean