public class AppExtension extends TestedExtension
android
extension for application plugins.
For the base module, see BaseExtension
For optional apks, this class is used directly.
globalScope, logger, project
Constructor and Description |
---|
AppExtension(org.gradle.api.Project project,
ProjectOptions projectOptions,
com.android.build.gradle.internal.scope.GlobalScope globalScope,
com.android.build.gradle.internal.SdkHandler sdkHandler,
org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.BuildType> buildTypes,
org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.ProductFlavor> productFlavors,
org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.SigningConfig> signingConfigs,
org.gradle.api.NamedDomainObjectContainer<BaseVariantOutput> buildOutputs,
com.android.build.gradle.internal.dependency.SourceSetManager sourceSetManager,
com.android.build.gradle.internal.ExtraModelInfo extraModelInfo,
boolean isBaseModule) |
Modifier and Type | Method and Description |
---|---|
void |
addVariant(BaseVariant variant) |
org.gradle.api.DomainObjectSet<ApplicationVariant> |
getApplicationVariants()
Returns a collection of build variants that
the app project includes.
|
addTestVariant, addUnitTestVariant, getMockableAndroidJar, getTestBuildType, getTestVariants, getUnitTestVariants, setTestBuildType
aaptOptions, adbOptions, buildToolsVersion, buildTypes, checkWritability, compileOptions, compileSdkVersion, compileSdkVersion, dataBinding, defaultConfig, defaultPublishConfig, deviceProvider, dexOptions, disableWrite, externalNativeBuild, flavorDimensions, generatePureSplits, getAaptOptions, getAdbExe, getAdbExecutable, getAdbOptions, getAidlPackageWhiteList, getBaseFeature, getBootClasspath, getBuildOutputs, getBuildToolsRevision, getBuildToolsVersion, getBuildTypes, getCompileOptions, getCompileSdkVersion, getDataBinding, getDefaultConfig, getDefaultProguardFile, getDefaultPublishConfig, getDeviceProviders, getDexOptions, getExternalNativeBuild, getFlavorDimensionList, getGeneratePureSplits, getJacoco, getLibraryRequests, getLintOptions, getNdkDirectory, getNdkVersion, getPackageBuildConfig, getPackagingOptions, getProductFlavors, getResourcePrefix, getSdkDirectory, getSigningConfigs, getSourceSets, getSplits, getTestOptions, getTestServers, getTransforms, getTransformsDependencies, getVariantFilter, jacoco, lintOptions, packagingOptions, productFlavors, registerArtifactType, registerBuildTypeSourceProvider, registerJavaArtifact, registerMultiFlavorSourceProvider, registerProductFlavorSourceProvider, registerTransform, resourcePrefix, setBuildToolsVersion, setCompileSdkVersion, setCompileSdkVersion, setDefaultPublishConfig, setGeneratePureSplits, setNdkVersion, setPublishNonDefault, setVariantFilter, signingConfigs, sourceSets, splits, testOptions, testServer, useLibrary, useLibrary, variantFilter, wrapJavaSourceSet
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAaptOptions, getAdbOptions, getAidlPackageWhiteList, getBaseFeature, getBootClasspath, getBuildOutputs, getBuildToolsRevision, getBuildToolsVersion, getBuildTypes, getCompileOptions, getCompileSdkVersion, getDataBinding, getDefaultConfig, getDefaultPublishConfig, getDeviceProviders, getDexOptions, getExternalNativeBuild, getFlavorDimensionList, getGeneratePureSplits, getJacoco, getLibraryRequests, getLintOptions, getNdkVersion, getPackageBuildConfig, getPackagingOptions, getProductFlavors, getResourcePrefix, getSigningConfigs, getSourceSets, getSplits, getTestOptions, getTestServers, getTransforms, getTransformsDependencies, getVariantFilter
public AppExtension(@NonNull org.gradle.api.Project project, @NonNull ProjectOptions projectOptions, @NonNull com.android.build.gradle.internal.scope.GlobalScope globalScope, @NonNull com.android.build.gradle.internal.SdkHandler sdkHandler, @NonNull org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.BuildType> buildTypes, @NonNull org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.ProductFlavor> productFlavors, @NonNull org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.internal.dsl.SigningConfig> signingConfigs, @NonNull org.gradle.api.NamedDomainObjectContainer<BaseVariantOutput> buildOutputs, @NonNull com.android.build.gradle.internal.dependency.SourceSetManager sourceSetManager, @NonNull com.android.build.gradle.internal.ExtraModelInfo extraModelInfo, boolean isBaseModule)
public org.gradle.api.DomainObjectSet<ApplicationVariant> getApplicationVariants()
To process elements in this collection, you should use the
all
iterator. That's because the plugin populates this collection only after
the project is evaluated. Unlike the each
iterator, using all
processes future elements as the plugin creates them.
The following sample iterates through all applicationVariants
elements to inject a
build variable into the manifest:
android.applicationVariants.all { variant -> def mergedFlavor = variant.getMergedFlavor() // Defines the value of a build variable you can use in the manifest. mergedFlavor.manifestPlaceholders = [hostName:"www.example.com/${variant.versionName}"] }
public void addVariant(BaseVariant variant)
addVariant
in class BaseExtension