Skip to content

Instantly share code, notes, and snippets.

@code-n-roll
Last active June 11, 2021 09:10
Show Gist options
  • Save code-n-roll/2fe62dfd80907ad6d9d67bbc57734b82 to your computer and use it in GitHub Desktop.
Save code-n-roll/2fe62dfd80907ad6d9d67bbc57734b82 to your computer and use it in GitHub Desktop.
Gradle dynamic build variant modification at compile time
/*android.variantFilter { variant ->
println "variant= " + variant.name
def flavorString = ""
def flavors = variant.getFlavors()
for (int i = 0; i < flavors.size(); i++) {
flavorString += flavors[i].name
println "flavorName=" + flavorString
}
if (flavorString.equalsIgnoreCase("mobile")) {
variant.getDefaultConfig().applicationId "app.zenia"
variant.getDefaultConfig().applicationIdSuffix ".debug"
println("appId = " + variant.getDefaultConfig().applicationId + variant.getDefaultConfig().applicationIdSuffix)
}
}*/
def renameVariants() {
android.applicationVariants.all { variant ->
if (variant.buildType.name == "debug") {
def flavors = variant.productFlavors
flavors.each() { flavor ->
if (flavor.name == "mobile") {
// println("\n==== begin buildConfig modification ====")
// println "variantName=" + variant.name
// println("before:")
// println("versionName= " + variant.mergedFlavor.versionName + variant.mergedFlavor.versionNameSuffix)
// println("applicationId= " + variant.mergedFlavor.applicationId + variant.mergedFlavor.applicationIdSuffix)
variant.mergedFlavor.applicationIdSuffix ".debug"
variant.mergedFlavor.versionNameSuffix "-debug"
// println("after:")
// println("versionName= " + variant.mergedFlavor.versionName + variant.mergedFlavor.versionNameSuffix)
// println("applicationId= " + variant.mergedFlavor.applicationId + variant.mergedFlavor.applicationIdSuffix)
// println("==== end buildConfig modification ====")
}
}
}
// def flavors = variant.productFlavors
// flavors.each() { flavor ->
// println("\n==== begin buildConfig read ====")
// println "variantName=" + variant.name
//
// println("versionName= " + variant.mergedFlavor.versionName + variant.mergedFlavor.versionNameSuffix)
// println("applicationId= " + variant.mergedFlavor.applicationId + variant.mergedFlavor.applicationIdSuffix)
//
// println("==== end buildConfig read ====")
// }
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment