Lifts the build off the JDK-21 ceiling — the old AGP 8.7.3 pin could not run
on JDK 25. Two AGP-9 migration edits were required:
- AGP 9 ships built-in Kotlin support, so applying org.jetbrains.kotlin.android
alongside it fails with "extension with name kotlin already registered";
the alias is dropped (kotlin.compose / kotlin.serialization stay, they are
separate compiler plugins).
- kotlinOptions { jvmTarget } came from that plugin and no longer resolves;
AGP derives jvmTarget from compileOptions instead.
compileSdk/targetSdk 35 -> 36, since Android Studio ships API 36.1 by default
and installing 35 was avoidable churn. versionCode 5 so the reports from this
toolchain are attributable (build 4 was already archived from the old one).
Also fixes a missing comma that left .claude/settings.json invalid JSON.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
53 lines
1.6 KiB
Kotlin
53 lines
1.6 KiB
Kotlin
plugins {
|
|
alias(libs.plugins.android.application)
|
|
alias(libs.plugins.kotlin.compose)
|
|
alias(libs.plugins.kotlin.serialization)
|
|
}
|
|
|
|
android {
|
|
namespace = "app.echo_lot.prober"
|
|
compileSdk = 36
|
|
|
|
defaultConfig {
|
|
applicationId = "app.echo_lot.prober"
|
|
minSdk = 26
|
|
targetSdk = 36
|
|
// Bump versionCode on EVERY deployed change — it is shown on screen and lands in the
|
|
// JSON report as proberBuild, so a report is attributable to an exact prober build.
|
|
versionCode = 5
|
|
versionName = "0.1.0"
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
isMinifyEnabled = false
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
}
|
|
buildFeatures {
|
|
compose = true
|
|
aidl = true
|
|
buildConfig = true // BuildConfig.VERSION_CODE feeds the on-screen + report build number
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(libs.androidx.core.ktx)
|
|
implementation(libs.androidx.lifecycle.runtime.ktx)
|
|
implementation(libs.androidx.activity.compose)
|
|
implementation(platform(libs.androidx.compose.bom))
|
|
implementation(libs.androidx.ui)
|
|
implementation(libs.androidx.ui.graphics)
|
|
implementation(libs.androidx.ui.tooling.preview)
|
|
implementation(libs.androidx.material3)
|
|
debugImplementation(libs.androidx.ui.tooling)
|
|
|
|
implementation(libs.shizuku.api)
|
|
implementation(libs.shizuku.provider)
|
|
implementation(libs.kotlinx.serialization.json)
|
|
implementation(libs.kotlinx.coroutines.android)
|
|
}
|