KiteConfigAndroidExtension

Everything Android-only, inside kiteConfig { android { ... } }.

kiteConfig {
appId = "com.example.jetzy"
android { appId { suffix = ".debug" } }
version = "1.4.0"
android { version { rebuild = 1 } }

android {
sdk(min = 26, target = 36, compile = 36)
}
}

Shared truth stays at root. This block holds only the Android SDK and NDK levels. The identifier suffix lives in android { appId { suffix } }, and the build-number dials live in version("x") { android { } }.

The resolved application id is readable as kiteConfig.androidApplicationId: the root appId joined with that android suffix. Read it to wire other build logic of your own. You cannot set it here.

Which module types receive each SDK setting

A library DSL simply has no targetSdk, and the KMP-native Android library DSL has neither targetSdk nor ndkVersion, so those are skipped there and reported rather than applied silently.

SettingApplicationClassic libraryKMP-native library
compileSdkyesyesyes
minSdkyesyesyes
targetSdkyesnot in the DSLnot in the DSL
ndkyesyesnot in the DSL

Picking the right version-code dial

Build numbers are not set here. They live in the version topic, in its android { } corner:

You wantSetEffect
The usual: one code per releasenothingthe shared formula applies
To re-upload the same app versionversion("x") { android { reupload } }bumps the low digits only
A different formula on Android onlyversion("x") { android { formula { } } }replaces the shared formula here
One exact number, no formulaversion("x") { android { pin } }bypasses the formula entirely
To be told before Play rejects youversion("x") { android { shipped } }fails the build if the code did not grow

See also

KiteVersionScope.formula

for the formula every platform shares.

KiteVersionScope.AndroidCorner

for the Android build-number corner.

for the Apple half of the same identity.

when more than one module is an application.

Constructors

Link copied to clipboard
constructor()

Properties

Link copied to clipboard
abstract val appId: Property<String>

The exact application identifier on this platform.

Link copied to clipboard
abstract val appName: Property<String>

The display name on this platform. Unset means the shared appName.

Link copied to clipboard
abstract val autoApply: Property<Boolean>

Apply this platform's source changes automatically. Unset means the shared autoApply.

Link copied to clipboard
abstract val compileSdk: Property<Int>

API level that supported Android applications and libraries compile against, written as compileSdk.

Link copied to clipboard
abstract val minSdk: Property<Int>

Lowest API level the app runs on, written as defaultConfig.minSdk in supported Android applications and libraries.

Link copied to clipboard
abstract val ndk: Property<String>

Exact NDK toolchain version for classic Android modules, in Android's major.minor.build form, for example 27.0.12077973.

Link copied to clipboard
override val platform: KitePlatform
Link copied to clipboard
abstract val targetSdk: Property<Int>

API level the app declares it was built for, written as defaultConfig.targetSdk in Android application modules.

Link copied to clipboard
abstract val version: Property<String>

The release version on this platform. Unset means the shared version.

Functions

Link copied to clipboard
fun appId(action: Action<in KiteAppIdScope>)

This platform's identifier suffix and delivery switch.

Link copied to clipboard
fun appName(action: Action<in KiteAppNameScope>)

Whether this platform receives the app name.

Link copied to clipboard
fun jvm(action: Action<in KiteJvmScope>)

The JVM toolchain and bytecode level for this platform's compilations.

Link copied to clipboard
fun locales(action: Action<in KiteAndroidLocalesScope>)

Android's locale list and its resource filter.

Link copied to clipboard
fun logo(action: Action<in KiteLogoScope>)

This platform's icon art and how much of the canvas the mark fills.

Link copied to clipboard
fun sdk(min: Int? = null, target: Int? = null, compile: Int? = null)

Set any subset of the three SDK levels in one line.

Link copied to clipboard
fun splash(action: Action<in KiteAndroidSplashScope>)

This platform's launch screen.

Link copied to clipboard
fun version(action: Action<in KitePlatformVersionScope>)

This platform's build number, counter, scheme, and delivery switch.