I have an old project from 2023-2024 year and i decided to upgrade all dependencies, gradle and agp but after fixing gradle error("targetjvm is deprecated" one) my app is crusing after tapping at buttons or something with onclick(it seems so because textboxes are fine) i'm getting next crush log:
java.lang.IllegalStateException: Cannot start this animator on a detached view!
at android.graphics.RenderNode.addAnimator(RenderNode.java:1659)
at android.graphics.animation.RenderNodeAnimator.setTarget(RenderNodeAnimator.java:288)
at android.graphics.animation.RenderNodeAnimator.setTarget(RenderNodeAnimator.java:277)
at android.graphics.drawable.RippleForeground.startPending(RippleForeground.java:139)
at android.graphics.drawable.RippleForeground.drawHardware(RippleForeground.java:168)
at android.graphics.drawable.RippleForeground.draw(RippleForeground.java:340)
at android.graphics.drawable.RippleDrawable.drawBackgroundAndRipples(RippleDrawable.java:1238)
at android.graphics.drawable.RippleDrawable.drawSolid(RippleDrawable.java:860)
at android.graphics.drawable.RippleDrawable.draw(RippleDrawable.java:842)
at android.view.View.drawBackground(View.java:26627)
at android.view.View.draw(View.java:26334)
at androidx.compose.material.ripple.RippleHostView.draw(RippleHostView.android.kt:62)
at androidx.compose.material.ripple.AndroidRippleNode.drawRipples(Ripple.android.kt:147)
at androidx.compose.material.ripple.RippleNode.draw(Ripple.kt:391)
at androidx.compose.ui.node.LayoutNodeDrawScope.drawDirect-eZhPAX0$ui(LayoutNodeDrawScope.kt:132)
at androidx.compose.ui.node.LayoutNodeDrawScope.draw-eZhPAX0$ui(LayoutNodeDrawScope.kt:119)
at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:484)
at androidx.compose.ui.node.NodeCoordinator.access$drawContainedDrawModifiers(NodeCoordinator.kt:69)
Project info
jvmtarget = java 1.8
kotlinVersion = 2.3.10
composeBomVersion = 2026.02.01
activityComposeVersion = 1.12.4
material3={module="androidx.compose.material3:material3"}
gradle.kts module
import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.google.services) alias(libs.plugins.firebase.crashlytics) alias(libs.plugins.kotlin.serialization) alias(libs.plugins.compose.compiler) } tasks.withType<KotlinJvmCompile>().configureEach { compilerOptions { jvmTarget.set(JvmTarget.JVM_1_8) freeCompilerArgs.add("-opt-in=kotlin.RequiresOptIn") } } android { namespace = ... compileSdk = 36 defaultConfig { applicationId = ... minSdk = 26 targetSdk = 34 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { useSupportLibrary = true } } buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } // "jvmTarget" string is deprecated // kotlinOptions { // jvmTarget = "1.8" // // use "-PenableComposeCompilerReports=true" to enable // if ((project.findProperty("enableComposeCompilerReports") as? String).toBoolean()) { // val outputDir = project.layout.buildDirectory.dir("compose-reports").get() // freeCompilerArgs = freeCompilerArgs + listOf( // "-P", // "plugin:androidx.compose.compiler.plugins.kotlin:reportsDestination=$outputDir", // "-P", // "plugin:androidx.compose.compiler.plugins.kotlin:metricsDestination=$outputDir" // ) // } // } buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.10" } packaging { resources { excludes += "/META-INF/{AL2.0,LGPL2.1}" } } } dependencies { //was added to fix crashes but didnt help implementation("androidx.compose.animation:animation:1.10.4") implementation("androidx.compose.animation:animation-graphics:1.10.4") //splashScreen implementation(libs.splashscreen) implementation(libs.exifinterface) implementation(libs.androidx.material.icons.core) //Unit tests testImplementation(libs.kotlinx.coroutines.test) // Import the BoM for the Firebase platform implementation(platform(libs.firebase.bom)) implementation(libs.firebase.analytics) implementation(libs.firebase.crashlytics) implementation(libs.firebase.messaging) implementation(libs.firebase.messaging.directboot) //view models navigation coil implementation(libs.lifecycle.viewmodel.compose) implementation(libs.androidx.lifecycle.runtime.compose) implementation(libs.androidx.runtime.livedata) implementation(libs.androidx.navigation.compose) implementation(libs.kotlinx.serialization.json) implementation(libs.androidx.datastore.preferences.android) implementation(libs.coil.compose) //Ktor implementation(libs.ktor.client.core) implementation(libs.ktor.client.android) implementation(libs.ktor.client.json) implementation(libs.ktor.serialization.kotlinx.json) implementation(libs.ktor.client.content.negotiation) implementation(libs.ktor.client.logging) //default implementation(libs.core.ktx) implementation(libs.lifecycle.runtime.ktx) implementation(libs.activity.compose) implementation(platform(libs.compose.bom)) implementation(libs.ui) implementation(libs.ui.graphics) implementation(libs.ui.tooling.preview) implementation(libs.material3) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) androidTestImplementation(platform(libs.compose.bom)) androidTestImplementation(libs.ui.test.junit4) debugImplementation(libs.ui.tooling) debugImplementation(libs.ui.test.manifest) }