# SingleArtifact

# SingleArtifact

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

<br />

```
sealed class SingleArtifact<T : FileSystemLocation> : Artifact.Single
```

<br />

|---|---|---|-------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                                                    ||||
| ↳ | [com.android.build.api.artifact.Artifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact)                   |||
|   | ↳ | [com.android.build.api.artifact.Artifact.Single](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Single)  ||
|   |   | ↳ | [com.android.build.api.artifact.SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact) |

Known direct subclasses  
[SingleArtifact.AAR](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.AAR),[SingleArtifact.APK_FROM_BUNDLE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.APK_FROM_BUNDLE),[SingleArtifact.APK](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.APK),[SingleArtifact.ASSETS](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.ASSETS),[SingleArtifact.BUNDLE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.BUNDLE),[SingleArtifact.MERGED_MANIFEST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST),[SingleArtifact.MERGED_NATIVE_LIBS](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.MERGED_NATIVE_LIBS),[SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT),[SingleArtifact.OBFUSCATION_MAPPING_FILE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_FILE),[SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST),[SingleArtifact.RUNTIME_SYMBOL_LIST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.RUNTIME_SYMBOL_LIST)  

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------|
| [SingleArtifact.AAR](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.AAR)                                                                   | The final AAR file as it would be published.                                                                             |
| [SingleArtifact.APK_FROM_BUNDLE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.APK_FROM_BUNDLE)                                           | Universal APK that contains assets for all screen densities.                                                             |
| [SingleArtifact.APK](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.APK)                                                                   | Directory where APK files will be located.                                                                               |
| [SingleArtifact.ASSETS](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.ASSETS)                                                             | Assets that will be packaged in the resulting AAR, APK or Bundle.                                                        |
| [SingleArtifact.BUNDLE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.BUNDLE)                                                             | The final Bundle ready for consumption at Play Store.                                                                    |
| [SingleArtifact.MERGED_MANIFEST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST)                                           | Merged manifest file that will be used in the APK, Bundle and InstantApp packages.                                       |
| [SingleArtifact.MERGED_NATIVE_LIBS](https://developer.android.com/reference/tools/gradle-api/8.9/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.            |
| [SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT) | The metadata for the library dependencies.                                                                               |
| [SingleArtifact.OBFUSCATION_MAPPING_FILE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_FILE)                         |                                                                                                                          |
| [SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST)               | A file containing the list of public resources exported by a library project.                                            |
| [SingleArtifact.RUNTIME_SYMBOL_LIST](https://developer.android.com/reference/tools/gradle-api/8.9/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). |

*** ** * ** ***

Public[Artifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact)for Android Gradle plugin.

These are[Artifact.Single](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Single), see[MultipleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/MultipleArtifact)for multiple ones.

All methods in the[Artifacts](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifacts)class should be supported with any subclass of this class.

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                ### Nested types                                                                                                                                                                                                                                                                                                                                                                                 |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `object `[SingleArtifact.AAR](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.AAR)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)`, `[Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Transformable) The final AAR file as it would be published.                                                                                                                                                                                                                                                                                                     |
| `object `[SingleArtifact.APK](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.APK)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)`, `[Artifact.ContainsMany](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.ContainsMany)`, `[Artifact.Replaceable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Replaceable)`, `[Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Transformable) Directory where APK files will be located.             |
| `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) `object `[SingleArtifact.APK_FROM_BUNDLE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.APK_FROM_BUNDLE)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact) Universal APK that contains assets for all screen densities.                                                                                                                                                                                                                                                                                                                     |
| `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) `object `[SingleArtifact.ASSETS](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.ASSETS)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)`, `[Artifact.Replaceable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Replaceable)`, `[Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Transformable) Assets that will be packaged in the resulting AAR, APK or Bundle.                                      |
| `object `[SingleArtifact.BUNDLE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.BUNDLE)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)`, `[Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Transformable) The final Bundle ready for consumption at Play Store.                                                                                                                                                                                                                                                                                      |
| `object `[SingleArtifact.MERGED_MANIFEST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)`, `[Artifact.Replaceable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Replaceable)`, `[Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Transformable) Merged manifest file that will be used in the APK, Bundle and InstantApp packages.                                                                                           |
| `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) `object `[SingleArtifact.MERGED_NATIVE_LIBS](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.MERGED_NATIVE_LIBS)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact) The directory containing all the native library (.so) files that will be packaged in the APK, AAR, or Bundle.                                                                                                                                                                                                                                                              |
| `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) `object `[SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)`, `[Artifact.Replaceable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Replaceable)`, `[Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Transformable) The metadata for the library dependencies. |
| `object `[SingleArtifact.OBFUSCATION_MAPPING_FILE](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_FILE)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact)                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `object `[SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.PUBLIC_ANDROID_RESOURCES_LIST)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact) A file containing the list of public resources exported by a library project.                                                                                                                                                                                                                                                                                                                                                                |
| `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) `object `[SingleArtifact.RUNTIME_SYMBOL_LIST](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact.RUNTIME_SYMBOL_LIST)` : `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact) The text symbol output file (R.txt) containing a list of resources and their ids (including of transitive dependencies).                                                                                                                                                                                                                                                 |

|                                                                                                                                                                                                                                                                                                                                                                           ### Protected constructors                                                                                                                                                                                                                                                                                                                                                                           |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `<T : `[FileSystemLocation](https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileSystemLocation.html)`> `[SingleArtifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact#SingleArtifact(com.android.build.api.artifact.ArtifactKind,com.android.build.api.artifact.Artifact.Category,kotlin.String))`(` ` kind: `[ArtifactKind](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/ArtifactKind)`<T>,` ` category: `[Artifact.Category](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Category)`,` ` fileName: `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`?` `)` |

|                                  ### Public functions                                   |
|-----------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `open `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [getFileSystemLocationName](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact#getFileSystemLocationName())`()` |

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                   ### Inherited functions                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| From[com.android.build.api.artifact.Artifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact) |-----------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `open `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [getFolderName](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact#getFolderName())`()`                            | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)        | [name](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact#name())`()` Provide a unique name for the artifact type. | |

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ### Inherited properties                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| From[com.android.build.api.artifact.Artifact](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact) |------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------| | [Artifact.Category](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact.Category) | [category](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact#category()) | | [ArtifactKind](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/ArtifactKind)`<T>`      | [kind](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/Artifact#kind())         | |

## Protected constructors

### SingleArtifact

```
protected <T : FileSystemLocation> SingleArtifact(
    kind: ArtifactKind<T>,
    category: Artifact.Category = Category.INTERMEDIATES,
    fileName: String? = null
)
```  

## Public functions

### getFileSystemLocationName

Added in 8.9.3  

```
open fun getFileSystemLocationName(): String
```  

|                                     Returns                                      |
|----------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | Depending on[T](https://developer.android.com/reference/tools/gradle-api/8.9/com/android/build/api/artifact/SingleArtifact), returns the file name of the folder under the variant-specific folder or an empty string to use defaults. |