我正在尝试将我的项目迁移到Gradle。我的其中一个项目有多个产品风味,每个产品风味的发布版本都必须使用不同的signingConfig
进行签名。到目前为止,这是我尝试过的:
buildscript {
...
}
apply plugin: 'android'
android {
compileSdkVersion 17
buildToolsVersion '17'
signingConfigs {
flavor1 {
storeFile file("keystore")
storePassword "secret"
keyAlias "aliasForFlavor1"
keyPassword "secretFlavor1"
}
flavor2 {
storeFile file("keystore")
storePassword "secret"
keyAlias "aliasForFlavor2"
keyPassword "secretFlavor2"
}
}
productFlavors {
flavor1 {
signingConfig signingConfigs.flavor1
}
flavor1 {
signingConfig signingConfigs.flavor2
}
}
}
dependencies {
...
}
当我运行gradle build
时,我会得到一个groovy.lang.MissingFieldException
和以下错误消息:
No such field: signingConfigs for class: com.android.build.gradle.internal.dsl.GroupableProductFlavorFactory
所以我认为在Gradle脚本中的productFlavors
.*部分不是放置代码签名配置的正确位置。