ApplicationProductFlavor
interface ApplicationProductFlavor : ApplicationBaseFlavor, ProductFlavor
Encapsulates all product flavors properties for application projects.
Product flavors represent different versions of your project that you expect to co-exist on a single device, the Google Play store, or repository. For example, you can configure 'demo' and 'full' product flavors for your app, and each of those flavors can specify different features, device requirements, resources, and application ID's--while sharing common source code and resources. So, product flavors allow you to output different versions of your project by simply changing only the components and settings that are different between them.
Configuring product flavors is similar to configuring build types: add them to the productFlavors
block of your project's build.gradle
file and configure the settings you want.
Product flavors support the same properties as the DefaultConfig
block—this is because defaultConfig
defines a ProductFlavor
object that the plugin uses as the base configuration for all other flavors. Each flavor you configure can then override any of the default values in defaultConfig
, such as the applicationId
.
When using Android plugin 3.0.0 and higher, each flavor must belong to a dimension
.
When you configure product flavors, the Android plugin automatically combines them with your BuildType
configurations to create build variants. If the plugin creates certain build variants that you don't want, you can filter variants using android.variantFilter
.
Summary
Public properties |
Boolean |
Whether this product flavor should be selected in Studio by default
|
Inherited functions |
From class com.android.build.api.dsl.ApplicationBaseFlavor
Unit |
This function is deprecated. Replaced by maxSdk property
|
Unit |
This function is deprecated. Replaced by targetSdkPreview property
|
Unit |
This function is deprecated. Replaced by targetSdk property
|
Unit |
This function is deprecated. Replaced by targetSdkPreview property
|
|
From class com.android.build.api.dsl.BaseFlavor
String |
The name of the flavor.
|
@Incubating Unit |
Copies all properties from the given flavor.
|
Unit |
This function is deprecated. Replaced by minSdk property
|
Unit |
This function is deprecated. Replaced by minSdkPreview property
|
Unit |
Specifies a flavor that the plugin should try to use from a given dimension in a dependency.
|
Unit |
Specifies a sorted list of flavors that the plugin should try to use from a given dimension in a dependency.
|
Unit |
Specifies a sorted list of flavors that the plugin should try to use from a given dimension in a dependency.
|
Unit |
This function is deprecated. Replaced by resourceConfigurations field
|
Unit |
This function is deprecated. Replaced by resourceConfigurations field
|
Unit |
This function is deprecated. Replaced by resourceConfigurations field
|
Unit |
This function is deprecated. Replaced by minSdk property
|
Unit |
This function is deprecated. Replaced by minSdkPreview property
|
Any? |
This function is deprecated. Replaced by testFunctionalTest property
|
Any? |
This function is deprecated. Replaced by testFunctionalTest property
|
Any? |
This function is deprecated. Replaced by testInstrumentationRunnerArguments property
|
Unit |
This function is deprecated. Replaced by testInstrumentationRunnerArguments property
|
Unit |
This function is deprecated. Replaced by testInstrumentationRunnerArguments property
|
Unit |
Configures VectorDrawables .
|
|
From class org.gradle.api.plugins.ExtensionAware
|
From class com.android.build.api.dsl.ProductFlavor
Void? |
This function is deprecated. Replaced with the dimension property
|
Unit |
This function is deprecated. Replaced with property matchingFallbacks
|
Unit |
This function is deprecated. Replaced with property matchingFallbacks
|
|
From class com.android.build.api.dsl.VariantDimension
Unit |
Adds manifest placeholders.
|
Unit |
Adds a new field to the generated BuildConfig class.
|
@Incubating Unit |
Encapsulates per-variant CMake and ndk-build configurations for your external native build.
|
Unit |
Options for configuring Java compilation.
|
Unit |
Encapsulates per-variant configurations for the NDK, such as ABI filters.
|
@Incubating Unit |
|
Any |
Adds a new ProGuard configuration file.
|
Any |
Adds new ProGuard configuration files.
|
Unit |
Adds a new generated resource.
|
Void? |
This function is deprecated. Use manifestPlaceholders property instead
|
Any |
Replaces the ProGuard configuration files.
|
Unit |
Configure the shader compiler options.
|
Any |
Adds a proguard rule file to be used when processing test code.
|
Any |
Adds proguard rule files to be used when processing test code.
|
|
Public properties
isDefault
var isDefault: Boolean
Whether this product flavor should be selected in Studio by default