在app的build.gradle中
定义方法:
def setSigningProperties() {
//这里是读取build.properties文件,提供给下方代码用来提取keystroe_storeFile等key的值
def props = new Properties()
// def currentFlavor = getCurrentFlavor()
// def flavorBuildPro = "app/src/${currentFlavor}/buildConfigs/build.properties"
def defaultBuildPro = 'app/KeyStore/build.properties'
if(project.rootProject.file(defaultBuildPro).exists()) {
props.load(project.rootProject.file(defaultBuildPro).newDataInputStream())
} else {
props.load(project.rootProject.file(defaultBuildPro).newDataInputStream())
}
android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
android.signingConfigs.release.storePassword = props['STORE_PASSWORD']
android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
android.signingConfigs.release.keyPassword = props['KEY_PASSWORD']
}
然后引用上
//signingConfigs 需要写在buildTypes 前面,不然会编译报错。
signingConfigs {
release {//发布版本的签名配置
setSigningProperties()
}
previewRelease {
storeFile file("KeyStore/eim-android.keystore")
storePassword "123456789"
keyAlias "eim-android"
keyPassword "123456789"
}
// debug {//调试版本的签名配置
// storeFile file(props['DEBUG_KEYSTORE'])
// keyAlias props['DEBUG_ALIAS']
// storePassword props['DEBUG_KEYSTORE_PWD']
// keyPassword props['DEBUG_KEY_PWD']
// }
}
新建一个.properties文件,自己找个位置新建。我选的是这里:

文件内容是:
STORE_PASSWORD=123456789
KEY_ALIAS=key0
KEY_PASSWORD=123456789
STORE_FILE=../app/KeyStore/KnowledgePooling.keystore
打完收工!

本文介绍如何在Gradle项目中设置签名配置,包括定义签名方法、加载属性文件及配置签名参数等步骤,适用于Android应用的发布。
1523

被折叠的 条评论
为什么被折叠?



