RotBolt / Flaker

A flaky network simulator for your mobile app
https://rotbolt.github.io/Flaker/
Apache License 2.0
237 stars 9 forks source link

Can not move to preference screen in flaker app. #79

Open victory316 opened 1 year ago

victory316 commented 1 year ago
ava.lang.NoSuchMethodError: No interface method ExposedDropdownMenu(ZLkotlin/jvm/functions/Function0;Landroidx/compose/ui/Modifier;Lkotlin/jvm/f
    at io.github.rotbolt.flakerandroidui.screens.prefs.FlakerPrefsScreenKt$PrefDropDownItem$1$3.invoke(FlakerPrefsScreen.kt:214)
    at io.github.rotbolt.flakerandroidui.screens.prefs.FlakerPrefsScreenKt$PrefDropDownItem$1$3.invoke(FlakerPrefsScreen.kt:202)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:117)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
    at androidx.compose.material3.ExposedDropdownMenuKt.ExposedDropdownMenuBox(ExposedDropdownMenu.kt:169)
    at io.github.rotbolt.flakerandroidui.screens.prefs.FlakerPrefsScreenKt.PrefDropDownItem(FlakerPrefsScreen.kt:198)
    at io.github.rotbolt.flakerandroidui.screens.prefs.FlakerPrefsScreenKt.access$PrefDropDownItem(FlakerPrefsScreen.kt:1)
    at io.github.rotbolt.flakerandroidui.screens.prefs.FlakerPrefsScreenKt$FlakerPrefsDialog$3$1$1$1.invoke(FlakerPrefsScreen.kt:95)
    at io.github.rotbolt.flakerandroidui.screens.prefs.FlakerPrefsScreenKt$FlakerPrefsDialog$3$1$1$1.invoke(FlakerPrefsScreen.kt:94)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:117)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
    at androidx.compose.foundation.lazy.LazyListIntervalContent$item$3.invoke(LazyListIntervalContent.kt:59)
    at androidx.compose.foundation.lazy.LazyListIntervalContent$item$3.invoke(LazyListIntervalContent.kt:59)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:138)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
    at androidx.compose.foundation.lazy.LazyListItemProviderImpl$Item$1.invoke(LazyListItemProvider.kt:79)
    at androidx.compose.foundation.lazy.LazyListItemProviderImpl$Item$1.invoke(LazyListItemProvider.kt:77)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:108)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
    at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:248)
    at androidx.compose.foundation.lazy.layout.LazyLayoutPinnableItemKt.LazyLayoutPinnableItem(LazyLayoutPinnableItem.kt:58)
    at androidx.compose.foundation.lazy.LazyListItemProviderImpl.Item(LazyListItemProvider.kt:77)
    at androidx.compose.foundation.lazy.layout.LazyLayoutItemContentFactoryKt$SkippableItem$1.invoke(LazyLayoutItemContentFactory.kt:135)
    at androidx.compose.foundation.lazy.layout.LazyLayoutItemContentFactoryKt$SkippableItem$1.invoke(LazyLayoutItemContentFactory.kt:134)
    at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:108)
    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.compose.foundation.lazy.layout.LazySaveableStateHolder.SaveableStateProvider(LazySaveableStateHolder.kt:85)
    at androidx.compose.foundation.lazy.layout.LazyLayoutItemContentFactoryKt.SkippableItem-JVlU9Rs(LazyLayoutItemContentFactory.kt:134)
    at androidx.compose.foundation.lazy.layout.LazyLayoutItemContentFactoryKt.access$SkippableItem-JVlU9Rs(LazyLayoutItemContentFactory.kt:1)

We are using compose version, 2023.10.00.

I've checked library version is using 2023.06.01, I don't know it is actually compatibility issue but it crashes anyway.

Please review for it. Thank you. @RotBolt

RotBolt commented 1 year ago

Exposed Drop-down was marked as an API which can change with version. So it's high possibility. I will check

dugsmith commented 11 months ago

I have the same error when using compose 2023.10.01.

RotBolt commented 11 months ago

Ok. I check this weekend and try to fix the issue Thank for details stack trace

RotBolt commented 7 months ago

@dugsmith @victory316 I tried with composeBom = "2023.10.00" and I can navigate to Preference Screen

Could you please share a reproducible or condition for this?

image

srinivaasang1 commented 6 months ago

I am using compose-bom "2024.04.00" and I am getting the same issue

RotBolt commented 6 months ago

@srinivaasang1 would you be able to give reproducing steps or a small reproducer?

srinivaasang1 commented 6 months ago

@srinivaasang1 would you be able to give reproducing steps or a small reproducer?

Should be easy to reproduce, just update the compose bom to "2024.04.00", it should break the flaker

RotBolt commented 6 months ago

@srinivaasang1 would you be able to give reproducing steps or a small reproducer?

Should be easy to reproduce, just update the compose bom to "2024.04.00", it should break the flaker

@srinivaasang1 I tried with other compose bom and it was working as I mentioned above. Would it be possible to share the build.gradle file ?

srinivaasang1 commented 6 months ago

can you try updating to compose bom "2024.04.00" and see if its working. it is worth doing a compose upgrade as it is almost the latest version and push another release.