# BaseFlavor

[View Source](https://cs.android.com/search?q=file:com/android/build/api/dsl/BaseFlavor.kt+class:com.android.build.api.dsl.BaseFlavor) Added in 4.2.0


```
interface BaseFlavor : VariantDimension
```

<br />

Known direct subclasses [ApplicationBaseFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationBaseFlavor), [DefaultConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DefaultConfig), [DynamicFeatureBaseFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureBaseFlavor), [LibraryBaseFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryBaseFlavor), [ProductFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ProductFlavor), [TestBaseFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestBaseFlavor)

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationBaseFlavor` | Shared properties between `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationProductFlavor` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationDefaultConfig` |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DefaultConfig` | Specifies defaults for variant properties that the Android plugin applies to all build variants. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureBaseFlavor` | Shared properties between DSL objects `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureProductFlavor` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureDefaultConfig` |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryBaseFlavor` | Shared properties between `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryProductFlavor` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryDefaultConfig` |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ProductFlavor` | Encapsulates all product flavors properties for this project. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestBaseFlavor` | Shared properties between `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestProductFlavor` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestDefaultConfig` |

Known indirect subclasses [ApplicationDefaultConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationDefaultConfig), [ApplicationProductFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationProductFlavor), [DynamicFeatureDefaultConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureDefaultConfig), [DynamicFeatureProductFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureProductFlavor), [LibraryDefaultConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryDefaultConfig), [LibraryProductFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryProductFlavor), [TestDefaultConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestDefaultConfig), [TestProductFlavor](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestProductFlavor)

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationDefaultConfig` | Specifies defaults for properties that the Android application plugin applies to all build variants. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ApplicationProductFlavor` | Encapsulates all product flavors properties for application projects. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureDefaultConfig` | Specifies defaults for properties that the Android dynamic-feature plugin applies to all build variants. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DynamicFeatureProductFlavor` | Encapsulates all product flavors properties for dynamic feature projects. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryDefaultConfig` | Specifies defaults for properties that the Android library plugin applies to all build variants. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/LibraryProductFlavor` | Encapsulates all product flavors properties for library projects. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestDefaultConfig` | Specifies defaults for properties that the Android test plugin applies to all build variants. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/TestProductFlavor` | Encapsulates all product flavors properties for test projects. |

*** ** * ** ***

Shared properties between DSL objects `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ProductFlavor` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/DefaultConfig`

## Summary

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#getName()()` The name of the flavor. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#initWith(com.android.build.api.dsl.BaseFlavor)(that: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor)` Copies all properties from the given flavor. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdk(kotlin.Function1)(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/MinSdkSpec.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)` Configures all aspects regarding minSdk, see `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/MinSdkSpec` for available options. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[minSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkVersion(kotlin.Int))(minSdkVersion: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` **This function is deprecated.** Will be removed in AGP 10.0, replaced with the minSdk block |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[minSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkVersion(kotlin.String))(minSdkVersion: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html?)` **This function is deprecated.** Will be removed in AGP 10.0, replaced with the minSdk block |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#missingDimensionStrategy(kotlin.String,kotlin.String)(dimension: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, requestedValue: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` Specifies a flavor that the plugin should try to use from a given dimension in a dependency. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#missingDimensionStrategy(kotlin.String,kotlin.collections.List)( dimension: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, requestedValues: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html> )` Specifies a sorted list of flavors that the plugin should try to use from a given dimension in a dependency. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#missingDimensionStrategy(kotlin.String,kotlin.Array)( dimension: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, vararg requestedValues: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html )` Specifies a sorted list of flavors that the plugin should try to use from a given dimension in a dependency. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[resConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resConfig(kotlin.String))(config: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` **This function is deprecated.** Support for resource configurations will be removed. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[resConfigs](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resConfigs(kotlin.collections.Collection))(config: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html>)` **This function is deprecated.** Support for resource configurations will be removed. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[resConfigs](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resConfigs(kotlin.Array))(vararg config: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` **This function is deprecated.** Support for resource configurations will be removed. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[setMinSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setMinSdkVersion(kotlin.Int))(minSdkVersion: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)` **This function is deprecated.** Will be removed in AGP 10.0, replaced with the minSdk block |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[setMinSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setMinSdkVersion(kotlin.String))(minSdkVersion: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html?)` **This function is deprecated.** Will be removed in AGP 10.0, replaced with the minSdk block |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html?` | `@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition [setTestFunctionalTest](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setTestFunctionalTest(kotlin.Boolean))(testFunctionalTest: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` **This function is deprecated.** Replaced by testFunctionalTest property |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html?` | `@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition [setTestHandleProfiling](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setTestHandleProfiling(kotlin.Boolean))(testHandleProfiling: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` **This function is deprecated.** Replaced by testFunctionalTest property |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html?` | `@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition [setTestInstrumentationRunnerArguments](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setTestInstrumentationRunnerArguments(kotlin.collections.MutableMap))( testInstrumentationRunnerArguments: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html> )` **This function is deprecated.** Replaced by testInstrumentationRunnerArguments property |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[testInstrumentationRunnerArgument](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testInstrumentationRunnerArgument(kotlin.String,kotlin.String))(key: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, value: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` **This function is deprecated.** Replaced by testInstrumentationRunnerArguments property |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `[testInstrumentationRunnerArguments](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testInstrumentationRunnerArguments(kotlin.collections.Map))(args: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html>)` **This function is deprecated.** Replaced by testInstrumentationRunnerArguments property |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#vectorDrawables(kotlin.Function1)(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VectorDrawables.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)` Configures `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VectorDrawables`. |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdk()` The minimum SDK version. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkPreview()` **This property is deprecated.** Will be removed in AGP 10.0, replaced with the minSdk block |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#renderscriptNdkModeEnabled()` Whether the renderscript code should be compiled to generate C/C++ bindings. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#renderscriptSupportModeBlasEnabled()` Whether the renderscript BLAS support lib should be used to make it compatible with older versions of Android. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#renderscriptSupportModeEnabled()` Whether the renderscript code should be compiled in support mode to make it compatible with older versions of Android. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#renderscriptTargetApi()` The renderscript target api, or null if not specified. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-set/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html>` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resourceConfigurations()` **This property is deprecated.** Support for resource configurations will be removed. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testApplicationId()` Test application ID. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testFunctionalTest()` See [instrumentation](http://developer.android.com/guide/topics/manifest/instrumentation-element.html). |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testHandleProfiling()` See [instrumentation](http://developer.android.com/guide/topics/manifest/instrumentation-element.html). |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testInstrumentationRunner()` Test instrumentation runner class name. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html>` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testInstrumentationRunnerArguments()` Test instrumentation runner custom arguments. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VectorDrawables` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#vectorDrawables()` Options to configure the build-time support for `vector` drawables. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html?` | `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#wearAppUnbundled()` Whether to enable unbundling mode for embedded wear app. |

### Inherited functions

From [com.android.build.api.dsl.VariantDimension](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension) `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#addManifestPlaceholders(kotlin.collections.Map)(manifestPlaceholders: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html>)`

Adds manifest placeholders.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#buildConfigField(kotlin.String,kotlin.String,kotlin.String)(type: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, name: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, value: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`

Adds a new field to the generated BuildConfig class.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `@https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html
https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#externalNativeBuild(kotlin.Function1)(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ExternalNativeBuildFlags.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`

Encapsulates per-variant CMake and ndk-build configurations for your external native build.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#javaCompileOptions(kotlin.Function1)(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/JavaCompileOptions.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`

Options for configuring Java compilation.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#ndk(kotlin.Function1)(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/Ndk.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`

Encapsulates per-variant configurations for the NDK, such as ABI filters.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `@https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html
[optimization](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#optimization(kotlin.Function1))(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/Optimization.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`

**This function is deprecated.** Use ApplicationBuildType.optimization(action) instead
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#proguardFile(kotlin.Any)(proguardFile: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`

Adds a new ProGuard configuration file.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#proguardFiles(kotlin.Array)(vararg files: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`

Adds new ProGuard configuration files.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#resValue(kotlin.String,kotlin.String,kotlin.String)(type: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, name: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, value: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`

Adds a new generated resource.
`https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Void.html?` `@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition
[setManifestPlaceholders](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#setManifestPlaceholders(kotlin.collections.Map))(manifestPlaceholders: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html>)`

**This function is deprecated.** Use manifestPlaceholders property instead
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#setProguardFiles(kotlin.collections.Iterable)(proguardFileIterable: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html<*>)`

Replaces the ProGuard configuration files.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#shaders(kotlin.Function1)(action: https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/Shaders.() -> https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`

Configure the shader compiler options.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#testProguardFile(kotlin.Any)(proguardFile: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`

Adds a proguard rule file to be used when processing test code.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#testProguardFiles(kotlin.Array)(vararg proguardFiles: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`

Adds proguard rule files to be used when processing test code.

### Inherited properties

From [com.android.build.api.dsl.VariantDimension](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension) `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/ExternalNativeBuildFlags` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#externalNativeBuild()`

Encapsulates per-variant CMake and ndk-build configurations for your external native build.
`https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/JavaCompileOptions` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#javaCompileOptions()`

Options for configuring Java compilation.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html<https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html, https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html>` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#manifestPlaceholders()`

The manifest placeholders.
`https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/File.html?` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#multiDexKeepFile()`

**This property is deprecated.** Legacy multidex (minSdk \<= 19) is deprecated in AGP 9.4 and will be unsupported in AGP 11.
`https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/File.html?` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#multiDexKeepProguard()`

**This property is deprecated.** Legacy multidex (minSdk \<= 19) is deprecated in AGP 9.4 and will be unsupported in AGP 11.
`https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/Ndk` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#ndk()`

Encapsulates per-variant configurations for the NDK, such as ABI filters.
`https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/Optimization` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#optimization()`

**This property is deprecated.** Use ApplicationBuildType.optimization instead
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html<https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/File.html>` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#proguardFiles()`

Specifies the ProGuard configuration files that the plugin should use.
`https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/Shaders` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#shaders()`

Options for configuring the shader compiler.
`https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html<https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/File.html>` `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VariantDimension#testProguardFiles()`

The collection of proguard rule files to be used when processing test code.

## Public functions

### getName

Added in 4.2.0

```
fun getName(): String
```

The name of the flavor.

### initWith

Added in 7.1.0

```
fun initWith(that: BaseFlavor): Unit
```

Copies all properties from the given flavor.

It can be used like this:

```
android.productFlavors {
    paid {
        initWith free
        // customize...
    }
}
```

### minSdk

Added in 8.12.0

```
fun minSdk(action: MinSdkSpec.() -> Unit): Unit
```

Configures all aspects regarding minSdk, see `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/MinSdkSpec` for available options.

### minSdkVersion

Added in 7.0.0 Deprecated in 7.0.0

```
fun [minSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkVersion(kotlin.Int))(minSdkVersion: Int): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Will be removed in AGP 10.0, replaced with the minSdk block, use this instead:
>
> ```
> minSdk { version = release(minSdkVersion) }
> ```

### minSdkVersion

Added in 7.0.0 Deprecated in 7.0.0

```
fun [minSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkVersion(kotlin.String))(minSdkVersion: String?): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Will be removed in AGP 10.0, replaced with the minSdk block

### missingDimensionStrategy

Added in 7.0.0

```
fun missingDimensionStrategy(dimension: String, requestedValue: String): Unit
```

Specifies a flavor that the plugin should try to use from a given dimension in a dependency.

Android plugin 3.0.0 and higher try to match each variant of your module with the same one from its dependencies. For example, consider if both your app and its dependencies include a "tier" /studio/build/build-variants.html#flavor-dimensions, with flavors "free" and "paid". When you build a "freeDebug" version of your app, the plugin tries to match it with "freeDebug" versions of the local library modules the app depends on.

However, there may be situations in which **a library dependency includes a flavor dimension that your app does not**. For example, consider if a library dependency includes flavors for a "minApi" dimension, but your app includes flavors for only the "tier" dimension. So, when you want to build the "freeDebug" version of your app, the plugin doesn't know whether to use the "minApi23Debug" or "minApi18Debug" version of the dependency, and you'll see an error message similar to the following:

```
Error:Failed to resolve: Could not resolve project :mylibrary.
Required by:
project :app
```

In this type of situation, use `missingDimensionStrategy` in the com.android.build.gradle.internal.dsl.DefaultConfig.html block to specify the default flavor the plugin should select from each missing dimension, as shown in the sample below. You can also override your selection in the com.android.build.gradle.internal.dsl.ProductFlavor.html block, so each flavor can specify a different matching strategy for a missing dimension. (Tip: you can also use this property if you simply want to change the matching strategy for a dimension that exists in both the app and its dependencies.)

```
// In the app's build.gradle file.
android {
    defaultConfig {
        // Specifies a flavor that the plugin should try to use from
        // a given dimension. The following tells the plugin that, when encountering
        // a dependency that includes a "minApi" dimension, it should select the
        // "minApi18" flavor.
        missingDimensionStrategy 'minApi', 'minApi18'
        // You should specify a missingDimensionStrategy property for each
        // dimension that exists in a local dependency but not in your app.
        missingDimensionStrategy 'abi', 'x86'
    }
    flavorDimensions 'tier'
    productFlavors {
        free {
            dimension 'tier'
            // You can override the default selection at the product flavor
            // level by configuring another missingDimensionStrategy property
            // for the "minApi" dimension.
            missingDimensionStrategy 'minApi', 'minApi23'
        }
        paid { }
    }
}
```

### missingDimensionStrategy

Added in 7.0.0

```
fun missingDimensionStrategy(
    dimension: String,
    requestedValues: List<String>
): Unit
```

Specifies a sorted list of flavors that the plugin should try to use from a given dimension in a dependency.

Android plugin 3.0.0 and higher try to match each variant of your module with the same one from its dependencies. For example, consider if both your app and its dependencies include a "tier" /studio/build/build-variants.html#flavor-dimensions, with flavors "free" and "paid". When you build a "freeDebug" version of your app, the plugin tries to match it with "freeDebug" versions of the local library modules the app depends on.

However, there may be situations in which **a library dependency includes a flavor dimension that your app does not**. For example, consider if a library dependency includes flavors for a "minApi" dimension, but your app includes flavors for only the "tier" dimension. So, when you want to build the "freeDebug" version of your app, the plugin doesn't know whether to use the "minApi23Debug" or "minApi18Debug" version of the dependency, and you'll see an error message similar to the following:

```
Error:Failed to resolve: Could not resolve project :mylibrary.
Required by:
project :app
```

In this type of situation, use `missingDimensionStrategy` in the com.android.build.gradle.internal.dsl.DefaultConfig.html block to specify the default flavor the plugin should select from each missing dimension, as shown in the sample below. You can also override your selection in the com.android.build.gradle.internal.dsl.ProductFlavor.html block, so each flavor can specify a different matching strategy for a missing dimension. (Tip: you can also use this property if you simply want to change the matching strategy for a dimension that exists in both the app and its dependencies.)

```
// In the app's build.gradle file.
android {
    defaultConfig {
        // Specifies a flavor that the plugin should try to use from
        // a given dimension. The following tells the plugin that, when encountering
        // a dependency that includes a "minApi" dimension, it should select the
        // "minApi18" flavor.
        missingDimensionStrategy 'minApi', 'minApi18'
        // You should specify a missingDimensionStrategy property for each
        // dimension that exists in a local dependency but not in your app.
        missingDimensionStrategy 'abi', 'x86'
    }
    flavorDimensions 'tier'
    productFlavors {
        free {
            dimension 'tier'
            // You can override the default selection at the product flavor
            // level by configuring another missingDimensionStrategy property
            // for the "minApi" dimension.
            missingDimensionStrategy 'minApi', 'minApi23'
        }
        paid { }
    }
}
```

### missingDimensionStrategy

Added in 7.0.0

```
fun missingDimensionStrategy(
    dimension: String,
    vararg requestedValues: String
): Unit
```

Specifies a sorted list of flavors that the plugin should try to use from a given dimension in a dependency.

Android plugin 3.0.0 and higher try to match each variant of your module with the same one from its dependencies. For example, consider if both your app and its dependencies include a "tier" /studio/build/build-variants.html#flavor-dimensions, with flavors "free" and "paid". When you build a "freeDebug" version of your app, the plugin tries to match it with "freeDebug" versions of the local library modules the app depends on.

However, there may be situations in which **a library dependency includes a flavor dimension that your app does not**. For example, consider if a library dependency includes flavors for a "minApi" dimension, but your app includes flavors for only the "tier" dimension. So, when you want to build the "freeDebug" version of your app, the plugin doesn't know whether to use the "minApi23Debug" or "minApi18Debug" version of the dependency, and you'll see an error message similar to the following:

```
Error:Failed to resolve: Could not resolve project :mylibrary.
Required by:
project :app
```

In this type of situation, use `missingDimensionStrategy` in the com.android.build.gradle.internal.dsl.DefaultConfig.html block to specify the default flavor the plugin should select from each missing dimension, as shown in the sample below. You can also override your selection in the com.android.build.gradle.internal.dsl.ProductFlavor.html block, so each flavor can specify a different matching strategy for a missing dimension. (Tip: you can also use this property if you simply want to change the matching strategy for a dimension that exists in both the app and its dependencies.)

```
// In the app's build.gradle file.
android {
    defaultConfig {
        // Specifies a flavor that the plugin should try to use from
        // a given dimension. The following tells the plugin that, when encountering
        // a dependency that includes a "minApi" dimension, it should select the
        // "minApi18" flavor.
        missingDimensionStrategy 'minApi', 'minApi18'
        // You should specify a missingDimensionStrategy property for each
        // dimension that exists in a local dependency but not in your app.
        missingDimensionStrategy 'abi', 'x86'
    }
    flavorDimensions 'tier'
    productFlavors {
        free {
            dimension 'tier'
            // You can override the default selection at the product flavor
            // level by configuring another missingDimensionStrategy property
            // for the "minApi" dimension.
            missingDimensionStrategy 'minApi', 'minApi23'
        }
        paid { }
    }
}
```

### resConfig

Added in 7.0.0 Deprecated in 7.0.0

```
fun [resConfig](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resConfig(kotlin.String))(config: String): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Support for resource configurations will be removed. For locales, use androidResources.localeFilters. For screen density, pass AAPT2's --preferred-density flag via androidResources.additionalParameters.

### resConfigs

Added in 7.0.0 Deprecated in 7.0.0

```
fun [resConfigs](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resConfigs(kotlin.collections.Collection))(config: Collection<String>): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Support for resource configurations will be removed. For locales, use androidResources.localeFilters. For screen density, pass AAPT2's --preferred-density flag via androidResources.additionalParameters.

### resConfigs

Added in 7.0.0 Deprecated in 7.0.0

```
fun [resConfigs](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#resConfigs(kotlin.Array))(vararg config: String): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Support for resource configurations will be removed. For locales, use androidResources.localeFilters. For screen density, pass AAPT2's --preferred-density flag via androidResources.additionalParameters.

### setMinSdkVersion

Added in 7.0.0 Deprecated in 7.0.0

```
fun [setMinSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setMinSdkVersion(kotlin.Int))(minSdkVersion: Int): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Will be removed in AGP 10.0, replaced with the minSdk block, use this instead:
>
> ```
> minSdk { version = release(minSdkVersion) }
> ```

### setMinSdkVersion

Added in 7.0.0 Deprecated in 7.0.0

```
fun [setMinSdkVersion](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setMinSdkVersion(kotlin.String))(minSdkVersion: String?): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Will be removed in AGP 10.0, replaced with the minSdk block

### setTestFunctionalTest

Added in 7.0.0 Deprecated in 7.0.0

```
@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition
fun [setTestFunctionalTest](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setTestFunctionalTest(kotlin.Boolean))(testFunctionalTest: Boolean): Any?
```

> [!CAUTION]
> **This function is deprecated.**   
> Replaced by testFunctionalTest property

### setTestHandleProfiling

Added in 7.0.0 Deprecated in 7.0.0

```
@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition
fun [setTestHandleProfiling](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setTestHandleProfiling(kotlin.Boolean))(testHandleProfiling: Boolean): Any?
```

> [!CAUTION]
> **This function is deprecated.**   
> Replaced by testFunctionalTest property

### setTestInstrumentationRunnerArguments

Added in 7.0.0 Deprecated in 7.0.0

```
@org.gradle.declarative.dsl.model.annotations.HiddenInDefinition
fun [setTestInstrumentationRunnerArguments](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#setTestInstrumentationRunnerArguments(kotlin.collections.MutableMap))(
    testInstrumentationRunnerArguments: MutableMap<String, String>
): Any?
```

> [!CAUTION]
> **This function is deprecated.**   
> Replaced by testInstrumentationRunnerArguments property

### testInstrumentationRunnerArgument

Added in 7.0.0 Deprecated in 7.0.0

```
fun [testInstrumentationRunnerArgument](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testInstrumentationRunnerArgument(kotlin.String,kotlin.String))(key: String, value: String): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Replaced by testInstrumentationRunnerArguments property

### testInstrumentationRunnerArguments

Added in 7.0.0 Deprecated in 7.0.0

```
fun [testInstrumentationRunnerArguments](https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#testInstrumentationRunnerArguments(kotlin.collections.Map))(args: Map<String, String>): Unit
```

> [!CAUTION]
> **This function is deprecated.**   
> Replaced by testInstrumentationRunnerArguments property

### vectorDrawables

Added in 4.2.0

```
fun vectorDrawables(action: VectorDrawables.() -> Unit): Unit
```

Configures `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/VectorDrawables`.

## Public properties

### minSdk

Added in 4.2.0

```
var minSdk: Int?
```

The minimum SDK version. Setting this it will override previous calls of `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdk()` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkPreview()` setters. Only one of `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdk()` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkPreview()` should be set.

See [uses-sdk element documentation](http://developer.android.com/guide/topics/manifest/uses-sdk-element.html).

### minSdkPreview

Added in 4.2.0 Deprecated in 8.12.0

```
var minSdkPreview: String?
```

> [!CAUTION]
> **This property is deprecated.**   
> Will be removed in AGP 10.0, replaced with the minSdk block

The minimum SDK version. Setting this it will override previous calls of `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdk(kotlin.Function1)` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkPreview()` setters. Only one of `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdk(kotlin.Function1)` and `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/dsl/BaseFlavor#minSdkPreview()` should be set.

See [uses-sdk element documentation](http://developer.android.com/guide/topics/manifest/uses-sdk-element.html).

### renderscriptNdkModeEnabled

Added in 4.2.0

```
var renderscriptNdkModeEnabled: Boolean?
```

Whether the renderscript code should be compiled to generate C/C++ bindings. True for C/C++ generation, false for Java, null if not specified.

### renderscriptSupportModeBlasEnabled

Added in 4.2.0

```
var renderscriptSupportModeBlasEnabled: Boolean?
```

Whether the renderscript BLAS support lib should be used to make it compatible with older versions of Android.

True if BLAS support lib is enabled, false if not, and null if not specified.

### renderscriptSupportModeEnabled

Added in 4.2.0

```
var renderscriptSupportModeEnabled: Boolean?
```

Whether the renderscript code should be compiled in support mode to make it compatible with older versions of Android.

True if support mode is enabled, false if not, and null if not specified.

### renderscriptTargetApi

Added in 4.2.0

```
var renderscriptTargetApi: Int?
```

The renderscript target api, or null if not specified. This is only the value set on this product flavor.

### resourceConfigurations

Added in 4.2.0 Deprecated in 8.8.0

```
val resourceConfigurations: MutableSet<String>
```

> [!CAUTION]
> **This property is deprecated.**   
> Support for resource configurations will be removed. For locales, use androidResources.localeFilters. For screen density, pass AAPT2's --preferred-density flag via androidResources.additionalParameters.

Specifies a list of [alternative resources](https://d.android.com/guide/topics/resources/providing-resources.html#AlternativeResources) to keep.

For example, if you are using a library that includes language resources (such as AppCompat or Google Play Services), then your APK includes all translated language strings for the messages in those libraries whether the rest of your app is translated to the same languages or not. If you'd like to keep only the languages that your app officially supports, you can specify those languages using the `resourceConfigurations` property, as shown in the sample below. Any resources for languages not specified are removed.

```
android {
    defaultConfig {
        ...
        // Keeps language resources for only the locales specified below.
        resourceConfigurations += ["en", "fr"]
    }
}
```

You can also specify a single screen density, which targets that density in the final APK. Resources for other densities are removed, except that a resource with no version at the target density is kept at the closest density available. Only one density may be specified. To target a density without `resourceConfigurations`, pass AAPT2's `--preferred-density` flag directly:

```
android {
    androidResources {
        additionalParameters += ["--preferred-density", "hdpi"]
    }
}
```

**Note:** `auto` is no longer supported because it created a number of issues with multi-module projects. Instead, you should specify a list of locales that your app supports, as shown in the sample above. Android plugin 3.1.0 and higher ignore the `auto` argument, and Gradle packages all string resources your app and its dependencies provide.

To learn more, see [Remove unused alternative resources](https://d.android.com/studio/build/shrink-code.html#unused-alt-resources).

### testApplicationId

Added in 4.2.0

```
var testApplicationId: String?
```

Test application ID.

See [Set the Application ID](https://developer.android.com/studio/build/application-id.html)

### testFunctionalTest

Added in 4.2.0

```
var testFunctionalTest: Boolean?
```

See [instrumentation](http://developer.android.com/guide/topics/manifest/instrumentation-element.html).

### testHandleProfiling

Added in 4.2.0

```
var testHandleProfiling: Boolean?
```

See [instrumentation](http://developer.android.com/guide/topics/manifest/instrumentation-element.html).

### testInstrumentationRunner

Added in 4.2.0

```
var testInstrumentationRunner: String?
```

Test instrumentation runner class name.

This is a fully qualified class name of the runner, e.g. `androidx.test.runner.AndroidJUnitRunner`

See [instrumentation](http://developer.android.com/guide/topics/manifest/instrumentation-element.html).

### testInstrumentationRunnerArguments

Added in 4.2.0

```
val testInstrumentationRunnerArguments: MutableMap<String, String>
```

Test instrumentation runner custom arguments.

e.g. `[key: "value"]` will give `adb shell am instrument -w -e key value com.example`...

See [instrumentation](http://developer.android.com/guide/topics/manifest/instrumentation-element.html).

Test runner arguments can also be specified from the command line:

```
./gradlew connectedAndroidTest -Pandroid.testInstrumentationRunnerArguments.size=medium
./gradlew connectedAndroidTest -Pandroid.testInstrumentationRunnerArguments.foo=bar
```

### vectorDrawables

Added in 4.2.0

```
val vectorDrawables: VectorDrawables
```

Options to configure the build-time support for `vector` drawables.

### wearAppUnbundled

Added in 4.2.0

```
var wearAppUnbundled: Boolean?
```

Whether to enable unbundling mode for embedded wear app.

If true, this enables the app to transition from an embedded wear app to one distributed by the play store directly.