Skip to content

Instantly share code, notes, and snippets.

@StephaneBg
Last active December 15, 2021 21:17
Show Gist options
  • Save StephaneBg/23476891fb37f80f9dc3e7bddade7c79 to your computer and use it in GitHub Desktop.
Save StephaneBg/23476891fb37f80f9dc3e7bddade7c79 to your computer and use it in GitHub Desktop.
Set different signing configs with multiple flavors and dimensions
signingConfigs {
vanillaPaid {
...
}
vanillaFree {
...
}
chocolatePaid {
...
}
chocolateFree {
...
}
}
flavorDimensions "taste", "type"
productFlavors {
vanilla {
dimension "taste"
applicationIdSuffix ".vanilla"
}
chocolate {
dimension "taste"
applicationIdSuffix ".chocolate"
}
free {
dimension "type"
...
}
paid {
dimension "type"
...
}
}
applicationVariants.all { variant ->
if (variant.name.equals("vanillaPaidRelease")) {
variant.mergedFlavor.setSigningConfig(signingConfigs.vanillaPaid)
} else if (variant.name.equals("vanillaFreeRelease")) {
variant.mergedFlavor.setSigningConfig(signingConfigs.vanillaFree)
} else if (variant.name.equals("chocolatePaidRelease")) {
variant.mergedFlavor.setSigningConfig(signingConfigs.chocolatePaid)
} else if (variant.name.equals("chocolateFreeRelease")) {
variant.mergedFlavor.setSigningConfig(signingConfigs.chocolateFree)
}
}
buildTypes {
release {
...
}
debug {
...
}
}
@jemshit
Copy link

jemshit commented Apr 1, 2020

Only getters exists in kotlin-gradle on mergedFlavor :/

@belinwu
Copy link

belinwu commented Dec 3, 2020

Not working for me when using Android Studio 4.0+
Is working for me when using Android Studio 3.6

@jemshit
Copy link

jemshit commented Dec 3, 2020

@iit2008047
Copy link

any lead ? stuck with this issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment