FATAL EXCEPTION: main
Process: co.haive.test, PID: 3962
java.lang.NoSuchMethodError: No static method rememberInfiniteTransition(Ljava/lang/String;Landroidx/compose/runtime/Composer;II)Landroidx/compose/animation/core/InfiniteTransition; in class Landroidx/compose/animation/core/InfiniteTransitionKt; or its super classes (declaration of 'androidx.compose.animation.core.InfiniteTransitionKt' appears in /data/app/~~_pVH61dywlhelNILin2Ajw==/co.haive.test-xmgnI9wJ3y0VF91e0jFfAA==/base.apk)
at co.haive.lib.common.v2.ui.material.ProgressKt.ResponseLoadingBox(Progress.kt:71)
at co.haive.lib.common.v2.ui.material.ProgressKt.HaiveNetResponseScene(Progress.kt:56)
at co.haive.user.v2.ui.welcome.WelcomeActivityKt.WelcomeCheckBindReferralScene-au3_HiA(WelcomeActivity.kt:436)
at co.haive.user.v2.ui.welcome.WelcomeActivityKt.access$WelcomeCheckBindReferralScene-au3_HiA(WelcomeActivity.kt:1)
at co.haive.user.v2.ui.welcome.WelcomeActivityKt$WelcomeCheckBindReferralScene$1.invoke(Unknown Source:25)
at co.haive.user.v2.ui.welcome.WelcomeActivityKt$WelcomeCheckBindReferralScene$1.invoke(Unknown Source:10)
at androidx.compose.runtime.RecomposeScopeImpl.compose(RecomposeScopeImpl.kt:162)
at androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd(Composer.kt:2443)
at androidx.compose.runtime.ComposerImpl.skipCurrentGroup(Composer.kt:2711)
at androidx.compose.runtime.ComposerImpl$doCompose$2$5.invoke(Composer.kt:3342)
at androidx.compose.runtime.ComposerImpl$doCompose$2$5.invoke(Composer.kt:3320)
at androidx.compose.runtime.SnapshotStateKt__DerivedStateKt.observeDerivedStateRecalculations(DerivedState.kt:341)
at androidx.compose.runtime.SnapshotStateKt.observeDerivedStateRecalculations(Unknown Source:1)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:3320)
at androidx.compose.runtime.ComposerImpl.recompose$runtime_release(Composer.kt:3285)
at androidx.compose.runtime.CompositionImpl.recompose(Composition.kt:772)
at androidx.compose.runtime.Recomposer.performRecompose(Recomposer.kt:1047)
at androidx.compose.runtime.Recomposer.access$performRecompose(Recomposer.kt:124)
at androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$2.invoke(Recomposer.kt:541)
at androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$2.invoke(Recomposer.kt:510)
at androidx.compose.ui.platform.AndroidUiFrameClock$withFrameNanos$2$callback$1.doFrame(AndroidUiFrameClock.android.kt:34)
at androidx.compose.ui.platform.AndroidUiDispatcher.performFrameDispatch(AndroidUiDispatcher.android.kt:109)
at androidx.compose.ui.platform.AndroidUiDispatcher.access$performFrameDispatch(AndroidUiDispatcher.android.kt:41)
at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.doFrame(AndroidUiDispatcher.android.kt:69)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1216)
at android.view.Choreographer.doCallbacks(Choreographer.java:972)
at android.view.ChoreographerExtImpl.checkScrollOptSceneEnable(ChoreographerExtImpl.java:319)
at android.view.Choreographer.doFrame(Choreographer.java:859)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1203)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:233)
at android.os.Looper.loop(Looper.java:344)
at android.app.ActivityThread.main(ActivityThread.java:8205)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:589)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1071)
Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [androidx.compose.runtime.PausableMonotonicFrameClock@cd2e382, androidx.compose.ui
从错误日志来看,你的项目在运行时遇到了一个java.lang.NoClassDefFoundError
。这个错误表明项目在运行时找不到androidx.compose.animation.AnimatedContentScope
类。
有几个可能的原因导致了这个问题:
- 依赖未正确配置。请检查你的项目的
build.gradle
文件,确保你已经添加了androidx.compose.animat
api 'androidx.compose.animation:animation:1.4.1' api 'androidx.compose.animation:animation-core:1.4.1' api 'androidx.compose.animation:animation-graphics:1.4.1'
- 依赖冲突。如果你的项目使用了多个库,并且它们依赖于不同版本的
androidx.compose.animation
库,可能会导致依赖冲突。你可以通过在build.gradle
文件中强制使用特定版本的库来解决这个问题。例如:
Android 节点下配置
configurations.configureEach {
resolutionStrategy {
force 'androidx.compose.animation:animation:1.4.1' // 使用合适的版本
force 'androidx.compose.animation:animation-core:1.4.1'
force 'androidx.compose.animation:animation-graphics:1.4.1'
}
}