HasInitWith

@Incubating interface HasInitWith<T : Any?>

Known direct subclasses
BaseFlavor

Shared properties between DSL objects ProductFlavor and DefaultConfig

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.

ProductFlavor

Encapsulates all product flavors properties for this project.

Known indirect subclasses
ApplicationBaseFlavor
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.

ApplicationProductFlavor

Encapsulates all product flavors properties for application projects.

DefaultConfig

Specifies defaults for variant properties that the Android plugin applies to all build variants.

DynamicFeatureBaseFlavor

Shared properties between DSL objects ProductFlavor and DefaultConfig for dynamic features.

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.

DynamicFeatureProductFlavor

Encapsulates all product flavors properties for dynamic feature projects.

LibraryBaseFlavor
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.

LibraryProductFlavor

Encapsulates all product flavors properties for library projects.

ProductFlavor

Encapsulates all product flavors properties for this project.

TestBaseFlavor
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.

TestDefaultConfig

Specifies defaults for properties that the Android test plugin applies to all build variants.

TestProductFlavor

Encapsulates all product flavors properties for test projects.


For build types and product flavors, they can be initialized from the current state of another.

This can be useful to save repeating configuration in the build file when two build types or flavors should be almost identical.

Custom extensions attached to build type and product flavor should implement this, so that they can also be initialized when Android Gradle plugin initialized the build type or product flavor too. Note that this will only work with Android Gradle Plugin 7.1 or higher, for older versions this will have no effect.

Summary

Public functions

Unit
initWith(that: T?)

Copy the properties of the given build type, product flavor or custom extension to this

Public functions

initWith

fun initWith(that: T?): Unit

Copy the properties of the given build type, product flavor or custom extension to this