我正在努力将我的项目转移到分级。我的一个项目有多种产品风格,每一种都必须在其发行版中使用不同的 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
.* 部分不是放置代码签名配置的正确位置。