KiteSsotAndroidExtension

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

kiteSsot {
id("com.example.jetzy") { android { suffix = ".debug" } }
version("1.4.0") { android { reupload = 1 } }

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

Shared truth stays at root. This block holds only what Android alone needs: the ID suffix, the version code dials, SDK levels, and two apply switches.

The plugin also exposes a read-only applicationId: Provider<String> here. It is the root appId joined with idSuffix. Read it to wire other build logic, for example into a manifest placeholder. You cannot set it.

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

You wantSetEffect
The usual: one code per releasenothingroot KiteSsotExtension.scheme applies
To re-upload the same app versionrebuildbumps the low digits only
A different formula on Android onlyschemereplaces the root formula here
One exact number, no formulaversionCodebypasses the scheme and rebuild
To be told before Play rejects youpublishedVersionCodefails the build if the code did not grow

See also

for the formula both platforms share.

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

Functions

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.