Sources

public interface Sources


Provides access to all source directories for a Variant.

Summary

Public methods

abstract SourceDirectories.Flat

Access to the aidl sources folders if com.android.build.api.dsl.BuildFeatures.aidl is true otherwise null

abstract SourceDirectories.Layered

Access to the Android assets sources folders.

abstract SourceDirectories.Flat

Access to the Baseline profiles source folders.

abstract @NonNull SourceDirectories.Flat

Access (and potentially creates) a new Flat for a custom source type that can be referenced by its name.

abstract SourceDirectories.Flat

Access to the Java source folders.

abstract SourceDirectories.Layered

Access to the JNI libraries folders

abstract SourceDirectories.Flat

Access to the Kotlin source folders.

abstract @NonNull ManifestFiles

Access to all android manifest files.

abstract SourceDirectories.Layered

Access to the machine learning models folders if com.android.build.api.dsl.ApplicationBuildFeatures.mlModelBinding is true otherwise null

abstract SourceDirectories.Flat

Access to the renderscript sources folders if com.android.build.api.dsl.BuildFeatures.renderScript is true otherwise null.

abstract SourceDirectories.Layered

Access to the Android resources sources folders if the component supports android resources or if com.android.build.api.dsl.LibraryBuildFeatures.androidResources is true for library variants, otherwise null.

abstract SourceDirectories.Flat

Access to the Java-style resources sources folders.

abstract SourceDirectories.Layered

Access to the shaders sources folders if com.android.build.api.dsl.BuildFeatures.shaders is true otherwise null

Public methods

getAidl

abstract SourceDirectories.Flat getAidl()

Access to the aidl sources folders if com.android.build.api.dsl.BuildFeatures.aidl is true otherwise null

getAssets

abstract SourceDirectories.Layered getAssets()

Access to the Android assets sources folders.

getBaselineProfiles

abstract SourceDirectories.Flat getBaselineProfiles()

Access to the Baseline profiles source folders.

getByName

@Incubating
abstract @NonNull SourceDirectories.Flat getByName(@NonNull String name)

Access (and potentially creates) a new Flat for a custom source type that can be referenced by its name.

The first caller will create the new instance, other callers with the same name will get the same instance returned. Any callers can obtain the final list of the folders registered under this custom source type by calling Flat.all.

These sources directories are attached to the variant and will be visible to Android Studio.

getJava

abstract SourceDirectories.Flat getJava()

Access to the Java source folders.

getJniLibs

abstract SourceDirectories.Layered getJniLibs()

Access to the JNI libraries folders

getKotlin

@Incubating
abstract SourceDirectories.Flat getKotlin()

Access to the Kotlin source folders.

getManifests

abstract @NonNull ManifestFiles getManifests()

Access to all android manifest files. Main manifest file is always the first one.

getMlModels

abstract SourceDirectories.Layered getMlModels()

Access to the machine learning models folders if com.android.build.api.dsl.ApplicationBuildFeatures.mlModelBinding is true otherwise null

getRenderscript

abstract SourceDirectories.Flat getRenderscript()

Access to the renderscript sources folders if com.android.build.api.dsl.BuildFeatures.renderScript is true otherwise null. RenderScript APIs are deprecated starting in Android 12 See more.

getRes

abstract SourceDirectories.Layered getRes()

Access to the Android resources sources folders if the component supports android resources or if com.android.build.api.dsl.LibraryBuildFeatures.androidResources is true for library variants, otherwise null.

getResources

abstract SourceDirectories.Flat getResources()

Access to the Java-style resources sources folders.

getShaders

abstract SourceDirectories.Layered getShaders()

Access to the shaders sources folders if com.android.build.api.dsl.BuildFeatures.shaders is true otherwise null