例如,我有一个 gradle 构建如下:
signingConfigs {
configFlavor1 {
keyAlias 'alias1'
keyPassword 'password1'
storeFile file('location1')
storePassword 'password1'
v1SigningEnabled true
v2SigningEnabled true
}
configFlavor2 {
keyAlias 'alias2'
keyPassword 'password2'
storeFile file('location2')
storePassword 'password2'
v1SigningEnabled true
v2SigningEnabled true
}
configFlavor3 {
keyAlias 'alias3'
keyPassword 'password3'
storeFile file('location3')
storePassword 'password3'
v1SigningEnabled true
v2SigningEnabled true
}
}
flavorDimensions "dimen1", "dimen2"
productFlavors {
flavor1 {
dimension "dimen1"
}
flavor2 {
dimension "dimen1"
}
testing {
dimension "dimen2"
}
dev {
dimension "dimen2"
}
prod {
dimension "dimen2"
}
}
现在我想使用特定于这个风味维度组合的签名配置..例如..我想签名:
flavor1Prod with configFlavor1
flavor2Prod with configFlavor2
flavor1Dev with configFlavor3
etc...
我试过这样的东西,
applicationVariants.all { variant ->
def mergedFlavor = variant.mergedFlavor
switch (variant.flavorName) {
case "flavor1Prod":
mergedFlavor.signingConfig = signingConfigs.configFlavor1
break
case "flavor2Prod":
mergedFlavor.signingConfig = signingConfigs.configFlavor2
break
... soo on...
}
}
但仍然每当我尝试运行时,它仍然会尝试生成一个未签名的 apk。
有人可以在这里帮助我吗?