Class Index
These are all the API classes. See all API packages.
A
| AaptOptions | This interface is deprecated. Renamed to AndroidResources | 
| AarMetadata | Variant object for configuring AAR metadata. | 
| AarMetadata | DSL object for configuring metadata that is embedded in the AAR. | 
| AbiSplit | DSL object for configuring per-abi splits options. | 
| AdbOptions | This interface is deprecated. Renamed to Installation | 
| AgpVersionAttr | Type of the attribute holding Android Gradle Plugin version. | 
| AgpVersionAttr.Companion | |
| AndroidBasePlugin | Common plugin applied by all plugins. | 
| AndroidComponentsExtension | Generic extension for Android Gradle Plugin related components. | 
| AndroidPluginVersion | Represents a version of the Android Gradle Plugin | 
| AndroidResources | Defines a variant's aapt options. | 
| AndroidResources | DSL object for configuring aapt options. | 
| AndroidSourceDirectorySet | An AndroidSourceDirectorySet represents a set of directory inputs for an Android project. | 
| AndroidSourceFile | An AndroidSourceFile represents a single file input for an Android project. | 
| AndroidSourceSet | An AndroidSourceSet represents a logical group of Java, aidl and RenderScript sources as well as Android and non-Android (Java-style) resources. | 
| AndroidTest | Properties for the android test Variant of a module. | 
| AndroidVersion | |
| AnnotationProcessor | |
| AnnotationProcessorOptions | Options for configuring Java annotation processor. | 
| ApkExtension | Common extension properties for the Android Gradle Plugin Application and Dynamic Feature plugins. | 
| ApkPackaging | Defines an APK variant's packaging options. | 
| ApkSigningConfig | DSL object to configure signing configs. | 
| AppPlugin | The plugin applied with `com.android.application' | 
| ApplicationAndroidComponentsExtension | Extension for the Android Application Gradle Plugin components. | 
| ApplicationBaseFlavor | |
| ApplicationBuildFeatures | A list of build features that can be disabled or enabled in an Android Application project. | 
| ApplicationBuildType | Build types define certain properties that Gradle uses when building and packaging your app, and are typically configured for different stages of your development lifecycle. | 
| ApplicationDefaultConfig | Specifies defaults for properties that the Android application plugin applies to all build variants. | 
| ApplicationExtension | Extension for the Android Gradle Plugin Application plugin. | 
| ApplicationProductFlavor | Encapsulates all product flavors properties for application projects. | 
| ApplicationPublishing | Maven publishing DSL object for configuring options related to publishing APK and AAB. | 
| ApplicationSingleVariant | Single variant publishing options for application projects. | 
| ApplicationVariant | Properties for the main Variant of an application. | 
| ApplicationVariantBuilder | Application specific variant object that contains properties that will determine the variant's build flow. | 
| ApplicationVariantDimension | Shared properties between DSL objects that contribute to an application variant. | 
| Artifact | Defines a type of artifact handled by the Android Gradle Plugin. | 
| Artifact.Appendable | Denotes an artifact type that can be appended to. | 
| Artifact.Category | Defines the kind of artifact type. this will be used to determine the output file location for instance. | 
| Artifact.Companion | Supported  | 
| Artifact.ContainsMany | Denotes a single  | 
| Artifact.Multiple | Denotes possible multiple  | 
| Artifact.Replaceable | Denotes an artifact type that can be replaced. | 
| Artifact.Single | Denotes a single  | 
| Artifact.Transformable | Denotes an artifact type that can transformed. | 
| ArtifactKind | Exhaustive list of artifact file representations supported by the Android Gradle plugin. | 
| ArtifactKind.DIRECTORY | |
| ArtifactKind.FILE | |
| ArtifactTransformationRequest | When a  | 
| Artifacts | Access to the artifacts on a Variant object. | 
| AsmClassVisitorFactory | A factory to create class visitor objects to instrument classes. | 
| AssetPackBundleExtension | |
| AssetPackBundlePlugin | |
| AssetPackExtension | Extension properties for the Asset Pack plugin. | 
| AssetPackPlugin | 
B
| BaseFlavor | Shared properties between DSL objects  | 
| BasePlugin | Base class for the plugin. | 
| BuildConfigField | Field definition for the generated BuildConfig class. | 
| BuildFeatures | A list of build features that can be disabled or enabled in an Android project. | 
| BuildType | Build types define certain properties that Gradle uses when building and packaging your app, and are typically configured for different stages of your development lifecycle. | 
| BuildTypeAttr | Type for the attribute holding BuildType information. | 
| BuildTypeAttr.Companion | |
| BuiltArtifact | Represents a built artifact that is present in the file system. | 
| BuiltArtifacts | Represents a  | 
| BuiltArtifacts.Companion | |
| BuiltArtifacts.TransformParams | Specialized version  of Gradle's  | 
| BuiltArtifactsLoader | Facility to load  | 
| Bundle | Features that apply to distribution by the bundle | 
| BundleAbi | |
| BundleCodeTransparency | |
| BundleConfig | Information related to the actions creating a bundle (.aab) file for the variant. | 
| BundleDensity | |
| BundleDeviceTier | |
| BundleLanguage | |
| BundleStoreArchive | |
| BundleTexture | 
C
| CanMinifyAndroidResources | Interface for component that can shrink resources | 
| CanMinifyAndroidResourcesBuilder | Interface for component builder that can shrink resources | 
| CanMinifyCode | Interface for component that can minify code | 
| CanMinifyCodeBuilder | Interface for component builder that can minify code | 
| ClassContext | |
| ClassData | Data about the class to be instrumented. | 
| Cmake | DSL object for per-module CMake configurations, such as the path to your  | 
| CmakeFlags | DSL object for per-variant CMake options, such as CMake arguments and compiler flags. | 
| CodeTransparency | |
| CombiningOperationRequest | |
| CommonExtension | Common extension properties for the Android Application. | 
| CompileOptions | Java compilation options. | 
| Component | |
| ComponentBuilder | Component object that contains properties that must be set during configuration time as it changes the build flow for the variant. | 
| ComponentIdentity | Variant Configuration represents the identify of a variant | 
| ComposeOptions | Optional settings for the Compose feature. | 
| Context | This interface is deprecated. | 
D
| DataBinding | DSL object for configuring databinding options. | 
| DefaultConfig | Specifies defaults for variant properties that the Android plugin applies to all build variants. | 
| DensitySplit | DSL object for configuring per-density splits options. | 
| DependenciesInfo | Read-only object to access dependencies information properties during com.android.build.api.variant.AndroidComponentsExtension#onVariants | 
| DependenciesInfo | DSL object to specify whether to include SDK dependency information in APKs and Bundles. | 
| DependenciesInfoBuilder | |
| Device | Top-level interface for all devices to run applications by tasks in the Android Gradle Plugin. | 
| DeviceGroup | A group of devices to be run with tests using the Unified Test Platform. | 
| DexPackaging | Packaging options for Dex (Android Dalvik Executable) files | 
| DexPackagingOptions | Defines an APK variant's packaging options for dex files. | 
| DirectoryInput | This interface is deprecated. | 
| DslExtension | Third party DSL extension configuration. | 
| DslExtension.Builder | Creates a  | 
| DslLifecycle | |
| DynamicDelivery | DSL object to configure dynamic delivery of an asset pack. | 
| DynamicFeatureAndroidComponentsExtension | Extension for the Android Dynamic Feature Gradle Plugin components. | 
| DynamicFeatureBaseFlavor | Shared properties between DSL objects  | 
| DynamicFeatureBuildFeatures | A list of build features that can be disabled or enabled in an Android Dynamic Feature project. | 
| DynamicFeatureBuildType | Build types define certain properties that Gradle uses when building and packaging your app, and are typically configured for different stages of your development lifecycle. | 
| DynamicFeatureDefaultConfig | Specifies defaults for properties that the Android dynamic-feature plugin applies to all build variants. | 
| DynamicFeatureExtension | Extension for the Android Dynamic Feature Gradle Plugin. | 
| DynamicFeaturePlugin | The plugin applied with `com.android.dynamic-feature' | 
| DynamicFeatureProductFlavor | Encapsulates all product flavors properties for dynamic feature projects. | 
| DynamicFeatureVariant | |
| DynamicFeatureVariantBuilder | |
| DynamicFeatureVariantDimension | Shared properties between DSL objects that contribute to an dynamic feature variant. | 
E
| EmulatorSnapshots | Options for configuring Android Test Retention. | 
| Execution | |
| ExecutionProfile | |
| ExternalNativeBuild | Parameters to use when building native components. | 
| ExternalNativeBuild | DSL object to configure external native builds using CMake or ndk-build | 
| ExternalNativeBuildFlags | DSL object for per-variant CMake and ndk-build configurations, such as toolchain arguments and compiler flags. | 
| ExternalNdkBuild | Interface for ndk-build per-variant info. | 
F
| FailureRetention | This interface is deprecated. Renamed to EmulatorSnapshots | 
| FilterConfiguration | Immutable filter configuration. | 
| FilterConfiguration.FilterType | Split dimension type | 
| Format | This enum is deprecated. | 
| FramesComputationMode | Indicates the frame computation mode that will be applied to the bytecode of the classes instrumented by ASM visitors registered through  | 
| FusedLibraryExtension | |
| FusedLibraryPlugin | 
G
| GeneratesAar | |
| GeneratesApk | Cross cutting interface for  | 
| GeneratesApkBuilder | Cross-cutting interface for components builders that produce APK files. | 
| GeneratesTestApk | 
H
| HasAndroidResources | |
| HasAndroidTest | Variants that optionally have instrumented tests. | 
| HasAndroidTestBuilder | Interface that mark the potential existence of android tests associated with a variant. | 
| HasInitWith | For build types and product flavors, they can be initialized from the current state of another. | 
| HasTestFixtures | Variants that optionally have test fixtures. | 
| HasTestFixturesBuilder | Interface that mark the potential existence of test fixtures associated with a variant. | 
I
| InAndOutDirectoryOperationRequest | |
| InAndOutFileOperationRequest | Operations performed by a  | 
| Installation | Options for the adb tool. | 
| Instrumentation | Options to register asm class visitors and to configure the instrumentation process. | 
| InstrumentationContext | Instrumentation context data that will be injected to  | 
| InstrumentationParameters | Parameters for a registered  | 
| InstrumentationParameters.None | |
| InstrumentationScope | 
J
| JacocoOptions | This interface is deprecated. Renamed to TestCoverage | 
| JarInput | This interface is deprecated. | 
| JavaCompilation | |
| JavaCompileOptions | DSL object for javaCompileOptions. | 
| JniLibsApkPackaging | Defines an APK variant's packaging options for native library (.so) files. | 
| JniLibsPackaging | Defines a variant's packaging options for native library (.so) files. | 
| JniLibsPackaging | Packaging options for native library (.so) files | 
K
| KeepRules | DSL object for external library dependencies keep rules configurations. | 
L
| LibraryAndroidComponentsExtension | Extension for the Android Library Gradle Plugin components. | 
| LibraryBaseFlavor | |
| LibraryBuildFeatures | A list of build features that can be disabled or enabled in an Android Library project. | 
| LibraryBuildType | Build types define certain properties that Gradle uses when building and packaging your library, and are typically configured for different stages of your development lifecycle. | 
| LibraryDefaultConfig | Specifies defaults for properties that the Android library plugin applies to all build variants. | 
| LibraryExtension | Extension for the Android Library Gradle Plugin. | 
| LibraryPlugin | The plugin applied with 'com.android.library' | 
| LibraryProductFlavor | Encapsulates all product flavors properties for library projects. | 
| LibraryPublishing | Maven publishing DSL object for configuring options related to publishing AAR. | 
| LibrarySingleVariant | Single variant publishing options for library projects. | 
| LibraryVariant | 
 | 
| LibraryVariantBuilder | 
 | 
| LibraryVariantDimension | Shared properties between DSL objects that contribute to a library variant. | 
| Lint | DSL object for configuring lint options. | 
| LintLifecycleExtension | |
| LintOptions | This interface is deprecated. Renamed to Lint | 
| LintPlugin | Plugin for running lint without the Android Gradle plugin, such as in a pure Kotlin project. | 
M
| ManagedDevices | Options for Managed Devices | 
| ManagedVirtualDevice | Device type for emulators to be managed by the Android Gradle Plugin. | 
| MultipleArtifact | Public  | 
| MultipleArtifact.MULTIDEX_KEEP_PROGUARD | Text files with additional ProGuard rules to be used to determine which classes are compiled into the main dex file. | 
| MultipleArtifact.NATIVE_DEBUG_METADATA | Directories with native debug metadata | 
| MultipleArtifact.NATIVE_SYMBOL_TABLES | Directories with debug symbol table | 
| MultipleVariants | Multi variant publishing options. | 
N
| Ndk | DSL object for per-variant NDK settings, such as the ABI filter. | 
| NdkBuild | DSL object for per-module ndk-build configurations, such as the path to your  | 
| NdkBuildFlags | DSL object for per-variant ndk-build options, such as ndk-build arguments and compiler flags. | 
O
| Optimization | DSL object for configurations aimed for optimizing build process(e.g. speed, correctness). | 
| OutOperationRequest | Operations performed by a  | 
P
| Packaging | Defines a variant's packaging options. | 
| Packaging | |
| PostProcessing | DSL object for configuring postProcessing: removing dead code, obfuscating etc. | 
| Prefab | Options for including Prefab packages in AARs. | 
| PrivacySandboxSdkBundle | |
| PrivacySandboxSdkExtension | |
| PrivacySandboxSdkPlugin | |
| ProductFlavor | Encapsulates all product flavors properties for this project. | 
| ProductFlavorAttr | Type for the attribute holding ProductFlavor information. | 
| ProductFlavorAttr.Companion | |
| Publishing | Maven publishing DSL object for configuring options related to publishing Android variants to a Maven repository. | 
| PublishingOptions | Maven publishing options shared by  | 
Q
| QualifiedContent | This interface is deprecated. | 
| QualifiedContent.ContentType | A content type that is requested through the transform API. | 
| QualifiedContent.DefaultContentType | The type of of the content. | 
| QualifiedContent.Scope | The scope of the content. | 
| QualifiedContent.ScopeType | Definition of a scope. | 
R
| Renderscript | |
| ResValue | Resource to be generated by the build system. | 
| ResValue.Key | a generated resource is identified by its type+name as you can create | 
| ResourcesPackaging | |
| ResourcesPackaging | Packaging options for java resource files | 
S
| ScopedArtifact | List of ScopedArtifacts.Scope artifacts. | 
| ScopedArtifact.CLASSES | .class files, result of sources compilation and/or external dependencies depending on the scope | 
| ScopedArtifact.JAVA_RES | |
| ScopedArtifacts | Scoped artifacts are artifacts that can be made available in the current variant scope, or may be optionally include the project's dependencies in the results. | 
| ScopedArtifacts.Scope | Defines possible scopes. | 
| ScopedArtifactsOperation | Defines all possible operations on a  | 
| SdkComponents | |
| SecondaryFile | This class is deprecated. | 
| SecondaryInput | This interface is deprecated. | 
| SettingsExtension | Interface used for the  | 
| SettingsPlugin | The plugin applied with `com.android.settings' | 
| Shaders | Options for configuring scoped shader options. | 
| SigningConfig | Defines a variant's signing config. | 
| SigningConfig | DSL object for configuring options related to signing for APKs and bundles. | 
| SingleArtifact | Public  | 
| SingleArtifact.AAR | The final AAR file as it would be published. | 
| SingleArtifact.APK | Directory where APK files will be located. | 
| SingleArtifact.APK_FROM_BUNDLE | Universal APK that contains assets for all screen densities. | 
| SingleArtifact.ASSETS | Assets that will be packaged in the resulting APK or Bundle. | 
| SingleArtifact.BUNDLE | The final Bundle ready for consumption at Play Store. | 
| SingleArtifact.MERGED_MANIFEST | Merged manifest file that will be used in the APK, Bundle and InstantApp packages. | 
| SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT | The metadata for the library dependencies. | 
| SingleArtifact.OBFUSCATION_MAPPING_FILE | |
| SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST | A file containing the list of public resources exported by a library project. | 
| SingleVariant | Single variant publishing options. | 
| SourceDirectories | Defines all common behaviors to sources access in AGP. | 
| SourceDirectories.Flat | Represents all the source folders for a source type in the variant. | 
| SourceDirectories.Layered | Represent a collection of directories that have overlay properties to each other. | 
| Sources | Provides access to all source directories for a  | 
| Split | Base data representing how an FULL_APK should be split for a given dimension (density, abi). | 
| Splits | Options to configure Multiple APKs. | 
| Status | This enum is deprecated. | 
T
| TaskBasedOperation | Interface with methods to wire input and output method references to  | 
| TestAndroidComponentsExtension | Extension for the Android Test Gradle Plugin components. | 
| TestBaseFlavor | |
| TestBuildFeatures | A list of build features that can be disabled or enabled in an Android Test project. | 
| TestBuildType | Build types define certain properties that Gradle uses when building and packaging your library, and are typically configured for different stages of your development lifecycle. | 
| TestComponent | |
| TestCoverage | Settings related to the gathering of code-coverage data from tests | 
| TestDefaultConfig | Specifies defaults for properties that the Android test plugin applies to all build variants. | 
| TestExtension | Extension for the Android Test Gradle Plugin. | 
| TestFixtures | |
| TestFixtures | DSL object for configuring test fixtures. | 
| TestOptions | Options for running tests. | 
| TestPlugin | The plugin applied with 'com.android.test' | 
| TestProductFlavor | Encapsulates all product flavors properties for test projects. | 
| TestVariant | 
 | 
| TestVariantBuilder | 
 | 
| TestVariantDimension | Shared properties between DSL objects that contribute to a separate-test-project variant. | 
| TestedExtension | Common extension properties for the Android Application. | 
| ToolOptions | |
| Transform | This class is deprecated. This API is planned to be removed in Android Gradle Plugin 8.0. | 
| TransformException | This class is deprecated. | 
| TransformInput | This interface is deprecated. | 
| TransformInvocation | This interface is deprecated. | 
| TransformOutputProvider | This interface is deprecated. | 
U
| UnitTest | |
| UnitTest | This interface is deprecated. Use the com.android.build.api.variant package | 
| UnitTestOptions | Options for controlling unit tests execution. | 
V
| Variant | Parent interface for all types of variants. | 
| VariantBuilder | Variant object that contains properties that must be set during configuration time as it changes the build flow for the variant. | 
| VariantDimension | Shared properties between DSL objects that contribute to a variant. | 
| VariantExtension | Marker type for  | 
| VariantExtensionConfig | Configuration object passed to the lambda responsible for creating a  | 
| VariantFilter | This interface is deprecated. Use AndroidComponentsExtension.beforeVariants API to disable specific variants | 
| VariantInfo | This interface is deprecated. | 
| VariantOutput | Defines a variant output. | 
| VariantOutputConfiguration | |
| VariantOutputConfiguration.OutputType | Type of package file, either the main APK or a full split APK file containing resources for a particular split dimension. | 
| VariantSelector | Selector to reduce the number of variants that are of interests when calling any of the variant API like  | 
| VectorDrawables | DSL object used to configure  | 
| ViewBinding | DSL object for configuring viewbinding options. | 
