# com.android.build.api.artifact

## Interfaces

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Appendable` | Denotes an artifact type that can be appended to. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.ContainsMany` | Denotes a `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact#DIRECTORY()` that may contain zero to many `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/variant/BuiltArtifact`. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Replaceable` | Denotes an artifact type that can be replaced. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Transformable` | Denotes an artifact type that can be transformed. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.WithQualifiers` | Denotes a `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Multiple` artifact that can have qualifiers attached to each of its `https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileSystemLocation.html` instances. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ArtifactTransformationRequest` | When a `https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html` contains more than one artifact (for example, consider `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.APK` with multiple APKs for different screen densities), this object will abstract away having to deal with `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/variant/BuiltArtifacts` and manually load and write the metadata files. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifacts` | Access to the artifacts on a Variant object. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/CombiningOperationRequest` | Operations performed by a `https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html` with a single `https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html` or `https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html` output. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/InAndOutDirectoryOperationRequest` | Operations performed by a `https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html` with a single `https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html` output. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/InAndOutFileOperationRequest` | Operations performed by a `https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html` with a single `https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html` output. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifactTypeOutOperationRequest` | Read-only Operations performed by a `https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html` with a multiple `https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html` or `https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html` output. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/OutOperationRequest` | Operations performed by a `https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html` with a single `https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html` or `https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html` output. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/RegisteredArtifactWithQualifiers` | Encapsulation of a registered `https://docs.gradle.org/current/javadoc/org/gradle/api/provider/Provider.html` of `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/RegisteredArtifactWithQualifiers` with qualifiers. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/TaskBasedOperation` | Interface with methods to wire input and output method references to `https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html`-based operations. |

## Classes

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact` | Defines a type of artifact handled by the Android Gradle Plugin. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Multiple` | Denotes possible multiple `https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileSystemLocation.html` instances for this artifact type. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Single` | Denotes a single `https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileSystemLocation.html` instance of this artifact type at a given time. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ArtifactKind` | Exhaustive list of artifact file representations supported by the Android Gradle plugin. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact` | Public `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact` for Android Gradle plugin. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ScopedArtifact` | List of ScopedArtifacts.Scope artifacts. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact` | Public `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact` for Android Gradle plugin. |

## Objects

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ArtifactKind.DIRECTORY` | A type of artifact file that is a `https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html` |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ArtifactKind.FILE` | A Type of artifact that is a `https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html` |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.MULTIDEX_KEEP_PROGUARD` | Text files with additional ProGuard rules to be used to determine which classes are compiled into the main dex file. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.NATIVE_DEBUG_METADATA` | Directories with native debug metadata |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.NATIVE_SYMBOL_TABLES` | Directories with debug symbol table |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.PRE_COMPILATION_CLASSES` | Directories containing generated code that will be added to compile classpath for the module. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ScopedArtifact.CLASSES` | .class files, result of sources compilation and/or external dependencies depending on the scope; includes users' transformation, but does not include Jacoco instrumentation |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ScopedArtifact.JAVA_RES` |   |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ScopedArtifact.POST_COMPILATION_CLASSES` | .class files, result of sources compilation and/or external dependencies depending on the scope |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.AAR` | The final AAR file as it would be published. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.AGGREGATED_LINT_HTML_REPORT` | The aggregated HTML lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.AGGREGATED_LINT_SARIF_REPORT` | The aggregated SARIF lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.AGGREGATED_LINT_TEXT_REPORT` | The aggregated text lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.AGGREGATED_LINT_XML_REPORT` | The aggregated XML lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.APK` | Directory where APK files will be located. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.APK_FROM_BUNDLE` | Universal APK that contains assets for all screen densities. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.ASSETS` | Assets that will be packaged in the resulting AAR, APK or Bundle. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.BUNDLE` | The final Bundle ready for consumption at Play Store. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.LINT_HTML_REPORT` | The HTML lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.LINT_SARIF_REPORT` | The SARIF lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.LINT_TEXT_REPORT` | The text lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.LINT_XML_REPORT` | The XML lint report file |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST` | Merged manifest file that will be used in the APK, Bundle and InstantApp packages. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.MERGED_NATIVE_LIBS` | The directory containing all the native library (.so) files that will be packaged in the APK, AAR, or Bundle. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT` | The metadata for the library dependencies. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_FILE` |   |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_PARTITION_FILE` |   |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST` | A file containing the list of public resources exported by a library project. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.RUNTIME_SYMBOL_LIST` | The text symbol output file (R.txt) containing a list of resources and their ids (including of transitive dependencies). |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.VERSION_CONTROL_INFO_FILE` | Points to the Version control information when VCS tagging is enabled (which is by default in release builds) |

## Enums

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Category` | Defines the kind of artifact type. this will be used to determine the output file location for instance. |