Dusan Stefanovic
11/26/2024, 8:02 AMFatal Exception: java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 1
at jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
at java.util.Objects.checkIndex(Objects.java:359)
at java.util.ArrayList.get(ArrayList.java:434)
at androidx.navigation.compose.NavHostKt$NavHost$25$1.invokeSuspend(NavHost.kt:518)
at androidx.navigation.compose.NavHostKt$NavHost$25$1.invoke(NavHost.kt:8)
at androidx.navigation.compose.NavHostKt$NavHost$25$1.invoke(NavHost.kt:4)
at androidx.activity.compose.OnBackInstance$job$1.invokeSuspend(PredictiveBackHandler.kt:121)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
at androidx.compose.ui.platform.AndroidUiDispatcher.performTrampolineDispatch(AndroidUiDispatcher.android.kt:81)
at androidx.compose.ui.platform.AndroidUiDispatcher.access$setScheduledFrameDispatch$p(AndroidUiDispatcher.android.kt)
at androidx.compose.ui.platform.AndroidUiDispatcher.access$performTrampolineDispatch(AndroidUiDispatcher.android.kt)
at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.run(AndroidUiDispatcher.android.kt:57)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:230)
at android.os.Looper.loop(Looper.java:319)
at android.app.ActivityThread.main(ActivityThread.java:9063)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:588)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
Ivan Matkov
11/26/2024, 8:05 AMIvan Matkov
11/26/2024, 8:06 AMIvan Matkov
11/26/2024, 8:07 AMDusan Stefanovic
11/26/2024, 8:09 AMIvan Matkov
11/26/2024, 8:11 AMDusan Stefanovic
11/26/2024, 8:15 AMIvan Matkov
11/26/2024, 8:19 AMDusan Stefanovic
11/26/2024, 8:20 AMStylianos Gakis
11/26/2024, 9:06 AMDusan Stefanovic
11/26/2024, 9:34 AMStylianos Gakis
11/26/2024, 9:36 AMDusan Stefanovic
11/26/2024, 9:38 AMIvan Matkov
11/26/2024, 9:46 AMDusan Stefanovic
11/26/2024, 9:58 AMIvan Matkov
11/26/2024, 10:31 AMDusan Stefanovic
11/26/2024, 10:46 AMStylianos Gakis
11/26/2024, 11:08 AMIvan Matkov
11/26/2024, 11:11 AMIs it simply that you won't have access to those in commonMain but will have access in androidMain?yes
And you rely on the fact that androidx has strict API guarantees so that things will for sure be compatible even when using the "old" apis from common?yes. that's why I recommend to do it only for patches. There are couple of experimental APIs that WILL break between minor versions
And does this guarantee potentially break at runtime if the apis used in common happen to have been experimental apis which may have changed in a backwards incompatible way?Most likely it will be compile time error
Dusan Stefanovic
12/18/2024, 11:43 AM