1、生成一个签名密钥
Windows机器先进入JDK 的 bin 目录下(比如C:\Program Files\Java\jdkx.x.x_x\bin),才能执行keytool命令。
mac不需要,直接执行命令即可。
//用keytool命令生成一个私有密钥,my-release-key.keystore的密钥库文件
//keytool -genkeypair -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 20000
$ keytool
-genkeypair -v
-keystore my-release-key.keystore
-alias my-key-alias //alias 参数后面的别名,将来为应用签名时需要用到的
-keyalg RSA
-keysize 2048
-validity 20000 //-validity 20000 有效期20000天
//设置密钥库口令,设置密钥库密码为123456,另一个密码提示时默认设为跟密钥库密码一样(可自己选择)执行命令后,会发现生成了一个文件:my-release-key.keystore,这就是apk的签名密钥。
2、设置 gradle 变量
1、把my-release-key.keystore文件放到你工程中的android/app文件夹下。
2、编辑 ~/.gradle/gradle.properties 或是 项目目录/android/gradle.properties文件。
说明:编辑~/.gradle/gradle.properties,修改的是全局配置,对所有项目有效。
/android/gradle.properties(项目配置,只对所在项目有效)
如果没有gradle.properties文件你就自己创建一个,添加如下的代码,分别为签名、别名、密钥库密码、密码
MYAPP_RELEASE_STORE_FILE = my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS = my-key-alias
MYAPP_RELEASE_STORE_PASSWORD = 123456
MYAPP_RELEASE_KEY_PASSWORD = 1234563、把签名配置加入到项目的 gradle 配置中
编辑 项目目录/android/app/build.gradle文件,添加如下的签名配置
...
android {
...
defaultConfig { ... }
signingConfigs {
release {
storeFile file("my-release-key.keystore")
storePassword "123456"
keyAlias "my-key-alias"
keyPassword "123456"
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}
}
...4、生成发行 APK 包
$ cd android
$ ./gradlew assembleRelease生成的 APK 文件位于android/app/build/outputs/apk/release/app-release.apk,它已经可以用来发布了。
版权声明:本文为weixin_43586120原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。