BaseExtension

Base 'android' extension for all android plugins.

This is never used directly. Instead,

Properties

PropertyDescription
aaptOptions

Options for aapt, tool for packaging resources.

buildToolsVersion

Required. Version of the build tools to use.

buildTypes

Build types used by this project.

compileOptions

Compile options

compileSdkVersion

Required. Compile SDK version.

defaultConfig

Default config, shared by all flavors.

defaultPublishConfig

Name of the configuration used to build the default artifact of this project.

dexOptions

Dex options.

jacoco

JaCoCo options.

lintOptions

Lint options.

packagingOptions

Packaging options.

productFlavors

All product flavors used by this project.

publishNonDefault

Whether to publish artifacts for all configurations, not just the default one.

resourcePrefix

A prefix to be used when creating new resources. Used by Studio

signingConfigs

Signing configs used by this project.

sourceSets

All source sets. Note that the Android plugin uses its own implementation of source sets, AndroidSourceSet.

splits

APK splits options.

testOptions

Options for running tests.

variantFilter

A variant filter to control which variants are excluded.

Methods

MethodDescription
adbOptions(action)

Configures adb options.

useLibrary(name)

Request the use a of Library. The library is then added to the classpath.

useLibrary(name, required)

Request the use a of Library. The library is then added to the classpath.

Script blocks

BlockDescription
aaptOptions

Configures aapt options.

buildTypes

Configures the build types.

compileOptions

Configures compile options.

defaultConfig

The default configuration, inherited by all build flavors (if any are defined).

dexOptions

Configures dex options.

jacoco

Configures JaCoCo options.

lintOptions

Configure lint options.

packagingOptions

Configures packaging options.

productFlavors

Configures the product flavors.

signingConfigs

Configures the signing configs.

sourceSets

Configures the source sets. Note that the Android plugin uses its own implementation of source sets, AndroidSourceSet.

splits

Configures APK splits.

testOptions

Configures the test options.

Property details

AaptOptions aaptOptions

Options for aapt, tool for packaging resources.

String buildToolsVersion

Required. Version of the build tools to use.

Value assigned to this property is parsed and stored in a normalized form, so reading it back may give a slightly different string.

Build types used by this project.

CompileOptions compileOptions

Compile options

String compileSdkVersion

Required. Compile SDK version.

Your code will be compiled against the android.jar from this API level. You should generally use the most up-to-date SDK version here. Use the Lint tool to make sure you don't use APIs not available in earlier platform version without checking.

Setter can be called with a string like "android-21" or a number.

Value assigned to this property is parsed and stored in a normalized form, so reading it back may give a slightly different string.

ProductFlavor defaultConfig

Default config, shared by all flavors.

String defaultPublishConfig

Name of the configuration used to build the default artifact of this project.

See Referencing a Library

DexOptions dexOptions

Dex options.

JaCoCo options.

LintOptions lintOptions

Lint options.

PackagingOptions packagingOptions

Packaging options.

NamedDomainObjectContainer<CoreProductFlavor> productFlavors

All product flavors used by this project.

boolean publishNonDefault

Whether to publish artifacts for all configurations, not just the default one.

See Referencing a Library

String resourcePrefix

A prefix to be used when creating new resources. Used by Studio

Signing configs used by this project.

All source sets. Note that the Android plugin uses its own implementation of source sets, AndroidSourceSet.

Splits splits

APK splits options.

See APK Splits.

TestOptions testOptions

Options for running tests.

Closure<Void> variantFilter

A variant filter to control which variants are excluded.

The filter is a closure which is passed a single object of type VariantFilter. It should set the VariantFilter.setIgnore() flag to filter out the given variant.

Method details

void adbOptions(Action<AdbOptions> action)

Configures adb options.

void useLibrary(String name)

Request the use a of Library. The library is then added to the classpath.

void useLibrary(String name, boolean required)

Request the use a of Library. The library is then added to the classpath.

Script block details

aaptOptions { }

Configures aapt options.

Delegates to:
AaptOptions from aaptOptions

buildTypes { }

Configures the build types.

compileOptions { }

Configures compile options.

Delegates to:
CompileOptions from compileOptions

defaultConfig { }

The default configuration, inherited by all build flavors (if any are defined).

Delegates to:
ProductFlavor from defaultConfig

dexOptions { }

Configures dex options.

Delegates to:
DexOptions from dexOptions

jacoco { }

Configures JaCoCo options.

Delegates to:
JacocoExtension from jacoco

lintOptions { }

Configure lint options.

Delegates to:
LintOptions from lintOptions

packagingOptions { }

Configures packaging options.

productFlavors { }

Configures the product flavors.

Delegates to:
NamedDomainObjectContainer<CoreProductFlavor> from productFlavors

signingConfigs { }

Configures the signing configs.

sourceSets { }

Configures the source sets. Note that the Android plugin uses its own implementation of source sets, AndroidSourceSet.

splits { }

Configures APK splits.

Delegates to:
Splits from splits

testOptions { }

Configures the test options.

Delegates to:
TestOptions from testOptions