Kite Config Android Extension
Everything Android-only, inside kiteConfig { android { ... } }.
kiteConfig {
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 the Android SDK and NDK levels. The id suffix lives in id("base") { android { suffix } }, and the build-number dials live in version("x") { android { } }.
The resolved application id is readable as kiteConfig.androidApplicationId: the root id joined with that android suffix. Read it to wire other build logic, for example into a manifest placeholder. 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.
| Setting | Application | Classic library | KMP-native library |
|---|---|---|---|
| compileSdk | yes | yes | yes |
| minSdk | yes | yes | yes |
| targetSdk | yes | not in the DSL | not in the DSL |
| ndk | yes | yes | not 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 want | Set | Effect |
|---|---|---|
| The usual: one code per release | nothing | the shared formula applies |
| To re-upload the same app version | version("x") { android { reupload } } | bumps the low digits only |
| A different formula on Android only | version("x") { android { formula { } } } | replaces the shared formula here |
| One exact number, no formula | version("x") { android { pin } } | bypasses the formula entirely |
| To be told before Play rejects you | version("x") { android { shipped } } | fails the build if the code did not grow |
See also
for the formula every platform shares.
for the Android build-number corner.
for the Apple half of the same identity.
when more than one module is an application.