I have 3 product flavors (flavor1, flavor2, flavor3) in my app. flavor1 and flavor2 share some of the dependencies related to ads.
Is there a way to bundle the ad related dependencies to a gradle dimension or configuration and add that to flavor1 and flavor2 without duplicating the compileFlavor1 and compileFlavor2 lines in my build.gradle?
This is part of my current gradle. This works. But, I'm wondering if there is a better way to do this? So, I don't have to repeat the ad dependencies for each flavor.
android {
productFlavors {
flavor1 {}
flavor2 {}
flavor3 {}
}
sourceSets {
main {}
flavor1.java.srcDir 'common/ads/java' <--- shared sourceSet
flavor2.java.srcDir 'common/ads/java'
flavor3.java.srcDir 'common/no_ads/java'
}
}
dependencies {
compile 'dependency1'
compile 'dependency2'
compileFlavor1 'dependency3' <----- Same list
compileFlavor1 'dependency4'
compileFlavor1 'dependency5'
compileFlavor2 'dependency3' <------ Same list
compileFlavor2 'dependency4'
compileFlavor2 'dependency5
}