getditto / DittoAndroidTools

Diagnostic and Debugging Tools for Ditto Android SDK
MIT License
6 stars 1 forks source link

Clicking on a collection in the data browser gives FatalException #49

Closed okdistribute closed 6 months ago

okdistribute commented 6 months ago

Reported by Ben Bradley

Process: com.cfahome.viewpoint.dev.debug, PID: 8628
                                                                                                    java.lang.NoSuchMethodError: No static method TextField(Ljava/lang/String;Lkotlin/jvm/functions/Function1;Landroidx/compose/ui/Modifier;ZZLandroidx/compose/ui/text/TextStyle;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function2;ZLandroidx/compose/ui/text/input/VisualTransformation;Landroidx/compose/foundation/text/KeyboardOptions;Landroidx/compose/foundation/text/KeyboardActions;ZILandroidx/compose/foundation/interaction/MutableInteractionSource;Landroidx/compose/ui/graphics/Shape;Landroidx/compose/material3/TextFieldColors;Landroidx/compose/runtime/Composer;III)V in class Landroidx/compose/material3/TextFieldKt; or its super classes (declaration of 'androidx.compose.material3.TextFieldKt' appears in /data/app/com.cfahome.viewpoint.dev.debug-GLYAbMUAXBW18T4mx9sVng==/base.apk!classes26.dex)
                                                                                                        at live.ditto.dittodatabrowser.DocumentsKt.SearchBar(Documents.kt:136)
                                                                                                        at live.ditto.dittodatabrowser.DocumentsKt.Documents(Documents.kt:39)
                                                                                                        at live.ditto.dittodatabrowser.ComposableSingletons$DataBrowserKt$lambda-1$1.invoke(DataBrowser.kt:26)
                                                                                                        at live.ditto.dittodatabrowser.ComposableSingletons$DataBrowserKt$lambda-1$1.invoke(DataBrowser.kt:23)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:118)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.navigation.compose.NavGraphBuilderKt$composable$1.invoke(NavGraphBuilder.kt:53)
                                                                                                        at androidx.navigation.compose.NavGraphBuilderKt$composable$1.invoke(NavGraphBuilder.kt:51)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:139)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.navigation.compose.NavHostKt$NavHost$14$1.invoke(NavHost.kt:308)
                                                                                                        at androidx.navigation.compose.NavHostKt$NavHost$14$1.invoke(NavHost.kt:306)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:248)
                                                                                                        at androidx.compose.runtime.saveable.SaveableStateHolderImpl.SaveableStateProvider(SaveableStateHolder.kt:84)
                                                                                                        at androidx.navigation.compose.NavBackStackEntryProviderKt.SaveableStateProvider(NavBackStackEntryProvider.kt:65)
                                                                                                        at androidx.navigation.compose.NavBackStackEntryProviderKt.access$SaveableStateProvider(NavBackStackEntryProvider.kt:1)
                                                                                                        at androidx.navigation.compose.NavBackStackEntryProviderKt$LocalOwnersProvider$1.invoke(NavBackStackEntryProvider.kt:52)
                                                                                                        at androidx.navigation.compose.NavBackStackEntryProviderKt$LocalOwnersProvider$1.invoke(NavBackStackEntryProvider.kt:51)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:228)
                                                                                                        at androidx.navigation.compose.NavBackStackEntryProviderKt.LocalOwnersProvider(NavBackStackEntryProvider.kt:47)
                                                                                                        at androidx.navigation.compose.NavHostKt$NavHost$14.invoke(NavHost.kt:306)
                                                                                                        at androidx.navigation.compose.NavHostKt$NavHost$14.invoke(NavHost.kt:295)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:139)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1$5.invoke(AnimatedContent.kt:755)
                                                                                                        at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1$5.invoke(AnimatedContent.kt:744)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:118)
2024-03-28 18:29:46.183  8628-8628  AndroidRuntime          com.cfahome.viewpoint.dev.debug      E      at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.compose.animation.AnimatedVisibilityKt.AnimatedEnterExitImpl(AnimatedVisibility.kt:818)
                                                                                                        at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1.invoke(AnimatedContent.kt:726)
                                                                                                        at androidx.compose.animation.AnimatedContentKt$AnimatedContent$6$1.invoke(AnimatedContent.kt:709)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
                                                                                                        at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
                                                                                                        at androidx.compose.animation.AnimatedContentKt.AnimatedContent(AnimatedContent.kt:768)
                                                                                                        at androidx.navigation.compose.NavHostKt.NavHost(NavHost.kt:273)
                                                                                                        at androidx.navigation.compose.NavHostKt$NavHost$17.invoke(Unknown Source:31)
                                                                                                        at androidx.navigation.compose.NavHostKt$NavHost$17.invoke(Unknown Source:14)
                                                                                                        at androidx.compose.runtime.RecomposeScopeImpl.compose(RecomposeScopeImpl.kt:192)
                                                                                                        at androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd(Composer.kt:2556)
                                                                                                        at androidx.compose.runtime.ComposerImpl.skipCurrentGroup(Composer.kt:2827)
                                                                                                        at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:3314)
                                                                                                        at androidx.compose.runtime.ComposerImpl.recompose$runtime_release(Composer.kt:3265)
                                                                                                        at androidx.compose.runtime.CompositionImpl.recompose(Composition.kt:938)
                                                                                                        at androidx.compose.runtime.Recomposer.performRecompose(Recomposer.kt:1155)
                                                                                                        at androidx.compose.runtime.Recomposer.access$performRecompose(Recomposer.kt:127)
                                                                                                        at androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$1.invoke(Recomposer.kt:583)
                                                                                                        at androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$1.invoke(Recomposer.kt:551)
                                                                                                        at androidx.compose.ui.platform.AndroidUiFrameClock$withFrameNanos$2$callback$1.doFrame(AndroidUiFrameClock.android.kt:41)
                                                                                                        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:965)
                                                                                                        at android.view.Choreographer.doCallbacks(Choreographer.java:791)
                                                                                                        at android.view.Choreographer.doFrame(Choreographer.java:722)
                                                                                                        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:952)
                                                                                                        at android.os.Handler.handleCallback(Handler.java:883)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:100)
                                                                                                        at android.os.Looper.loop(Looper.java:214)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:7356)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
                                                                                                        Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.runtime.PausableMonotonicFrameClock@67e04f0, androidx.compose.ui.platform.MotionDurationScaleImpl@ac96a69, StandaloneCoroutine{Cancelling}@c647cee, AndroidUiDispatcher@2ede58f]
rajramsaroop commented 6 months ago

Is there a way to reproduce this? Seems like this SO post should fix the issue. I don't see that code in our build.gradle for the DataBrowser module.

Relevant info from SO post:

The following needs to be added to the basic-dialogs module's build.gradle file:

buildFeatures {
    compose true
}
composeOptions {
    kotlinCompilerExtensionVersion compose_version
}
rajramsaroop commented 6 months ago

Viewpoint has the above code in their build.gradle file, so if it occurs again I can make a PR against the DittoAndroidTools repo and update our build.gradle, but I'm not sure if that's needed at this time.