koin icon indicating copy to clipboard operation
koin copied to clipboard

org.koin.core.error.InstanceCreationException: Could not create instance for '[Factory: 'ViewModelName'

Open Feinate opened this issue 11 months ago • 5 comments

Describe the bug On iOS, when using Koin for dependency injection in a Kotlin Multiplatform Mobile (KMM) project, an InstanceCreationException is thrown when attempting to create an instance of HousesViewModelImpl. The issue only occurs on iOS, and the app works fine on Android.

-- Start of trace --

2025-01-31 00:46:15.439155+0100 Officine[18355:335513] [PPT] Error creating the CFMessagePort needed to communicate with PPT. org.koin.core.error.InstanceCreationException: Could not create instance for '[Factory: 'com.shabakett.officine.core.navigation.screen.NavigationViewModel']' Uncaught Kotlin exception: at 0 Officine.debug.dylib 0x107b02433 kfun:kotlin.Exception#(kotlin.String?;kotlin.Throwable?){} + 123 at 1 Officine.debug.dylib 0x10804343b kfun:org.koin.core.error.InstanceCreationException#(kotlin.String;kotlin.Exception){} + 123 at 2 Officine.debug.dylib 0x108044867 kfun:org.koin.core.instance.InstanceFactory#create(org.koin.core.instance.ResolutionContext){}1:0 + 1703 at 3 Officine.debug.dylib 0x108044097 kfun:org.koin.core.instance.FactoryInstanceFactory#get(org.koin.core.instance.ResolutionContext){}1:0 + 103 at 4 Officine.debug.dylib 0x10805ef13 kfun:org.koin.core.instance.InstanceFactory#get(org.koin.core.instance.ResolutionContext){}1:0-trampoline + 67 at 5 Officine.debug.dylib 0x10804f3a3 kfun:org.koin.core.registry.InstanceRegistry#resolveInstance(org.koin.core.qualifier.Qualifier?;kotlin.reflect.KClass<>;org.koin.core.qualifier.Qualifier;org.koin.core.instance.ResolutionContext){0§<kotlin.Any?>}0:0? + 343 at 6 Officine.debug.dylib 0x108057e5b kfun:org.koin.core.scope.Scope.resolveFromRegistry#internal + 323 at 7 Officine.debug.dylib 0x1080572bb kfun:org.koin.core.scope.Scope.resolveFromContext#internal + 1503 at 8 Officine.debug.dylib 0x108056623 kfun:org.koin.core.scope.Scope.stackParametersCall#internal + 871 at 9 Officine.debug.dylib 0x108056273 kfun:org.koin.core.scope.Scope.resolveInstance#internal + 867 at 10 Officine.debug.dylib 0x108055767 kfun:org.koin.core.scope.Scope.resolve#internal + 1019 at 11 Officine.debug.dylib 0x108055337 kfun:org.koin.core.scope.Scope#getWithParameters(kotlin.reflect.KClass<>;org.koin.core.qualifier.Qualifier?;org.koin.core.parameter.ParametersHolder?){0§<kotlin.Any?>}0:0 + 159 at 12 Officine.debug.dylib 0x1097b63d7 kfun:org.koin.viewmodel.factory.KoinViewModelFactory#create(kotlin.reflect.KClass<0:0>;androidx.lifecycle.viewmodel.CreationExtras){0§<androidx.lifecycle.ViewModel>}0:0 + 411 at 13 Officine.debug.dylib 0x1089389b7 kfun:androidx.lifecycle.ViewModelProvider.Factory#create(kotlin.reflect.KClass<0:0>;androidx.lifecycle.viewmodel.CreationExtras){0§<androidx.lifecycle.ViewModel>}0:0-trampoline + 115 at 14 Officine.debug.dylib 0x108938103 kfun:androidx.lifecycle.viewmodel#createViewModel(androidx.lifecycle.ViewModelProvider.Factory;kotlin.reflect.KClass<0:0>;androidx.lifecycle.viewmodel.CreationExtras){0§<androidx.lifecycle.ViewModel>}0:0 + 131 at 15 Officine.debug.dylib 0x108934277 kfun:androidx.lifecycle.viewmodel.ViewModelProviderImpl#getViewModel(kotlin.reflect.KClass<0:0>;kotlin.String){0§<androidx.lifecycle.ViewModel>}0:0 + 1163 at 16 Officine.debug.dylib 0x1089344e7 kfun:androidx.lifecycle.viewmodel.ViewModelProviderImpl#getViewModel$default(kotlin.reflect.KClass<0:0>;kotlin.String?;kotlin.Int){0§<androidx.lifecycle.ViewModel>}0:0 + 311 at 17 Officine.debug.dylib 0x108936ecb kfun:androidx.lifecycle.ViewModelProvider#get(kotlin.reflect.KClass<0:0>){0§<androidx.lifecycle.ViewModel>}0:0 + 183 at 18 Officine.debug.dylib 0x1097b565b kfun:org.koin.viewmodel#resolveViewModel(kotlin.reflect.KClass<0:0>;androidx.lifecycle.ViewModelStore;kotlin.String?;androidx.lifecycle.viewmodel.CreationExtras;org.koin.core.qualifier.Qualifier?;org.koin.core.scope.Scope;kotlin.Function0<org.koin.core.parameter.ParametersHolder>?){0§<androidx.lifecycle.ViewModel>}0:0 + 711 at 19 Officine.debug.dylib 0x106ff40fb kfun:com.shabakett.officine#App(com.shabakett.officine.core.navigation.screen.NavigationViewModel?;androidx.compose.runtime.Composer?;kotlin.Int;kotlin.Int){} + 2375 at 20 Officine.debug.dylib 0x1076ae8e3 kfun:com.shabakett.officine.ComposableSingletons$MainViewControllerKt.$lambda$0#internal + 411 at 21 Officine.debug.dylib 0x1076ae9b3 kfun:com.shabakett.officine.ComposableSingletons$MainViewControllerKt.$$lambda$0$FUNCTION_REFERENCE$0.invoke#internal + 95 at 22 Officine.debug.dylib 0x1076aea67 kfun:com.shabakett.officine.ComposableSingletons$MainViewControllerKt.$$lambda$0$FUNCTION_REFERENCE$0.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 23 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 24 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 25 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 26 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 27 Officine.debug.dylib 0x107efdee3 kfun:androidx.compose.runtime#CompositionLocalProvider(kotlin.Array<out|androidx.compose.runtime.ProvidedValue<>>...;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 28 Officine.debug.dylib 0x108b88057 kfun:androidx.compose.ui.scene.ComposeHostingViewController.ProvideContainerCompositionLocals#internal + 1875 at 29 Officine.debug.dylib 0x108b890df kfun:androidx.compose.ui.scene.ComposeHostingViewController.createMediator$lambda$4#internal + 475 at 30 Officine.debug.dylib 0x108b8ac4b kfun:androidx.compose.ui.scene.ComposeHostingViewController.$createMediator$lambda$4$FUNCTION_REFERENCE$10.invoke#internal + 115 at 31 Officine.debug.dylib 0x108b8ad73 kfun:androidx.compose.ui.scene.ComposeHostingViewController.$createMediator$lambda$4$FUNCTION_REFERENCE$10.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 32 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 33 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 34 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 35 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 36 Officine.debug.dylib 0x108aed98f kfun:androidx.compose.ui.layout#OverlayLayout(androidx.compose.ui.Modifier;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 3159 at 37 Officine.debug.dylib 0x108b35d9f kfun:androidx.compose.ui.viewinterop#TrackInteropPlacementContainer__at__androidx.compose.ui.viewinterop.InteropContainer(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 1947 at 38 Officine.debug.dylib 0x108b9be57 kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16$lambda$15$lambda$14$lambda$13#internal + 507 at 39 Officine.debug.dylib 0x108ba1807 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$lambda$13$FUNCTION_REFERENCE$40.invoke#internal + 119 at 40 Officine.debug.dylib 0x108ba195b kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$lambda$13$FUNCTION_REFERENCE$40.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 41 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 42 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 43 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 44 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 45 Officine.debug.dylib 0x108ae87d7 kfun:androidx.compose.ui.layout#OffsetToFocusedRect(androidx.compose.ui.platform.PlatformInsets;kotlin.Function0<androidx.compose.ui.geometry.Rect?>;androidx.compose.ui.unit.IntSize?;kotlin.time.Duration;kotlin.Function0<kotlin.Unit>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 8051 at 46 Officine.debug.dylib 0x108b95aef kfun:androidx.compose.ui.scene.ComposeSceneMediator.FocusAboveKeyboardIfNeeded#internal + 3683 at 47 Officine.debug.dylib 0x108b9c14b kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16$lambda$15$lambda$14#internal + 639 at 48 Officine.debug.dylib 0x108ba1a07 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$FUNCTION_REFERENCE$41.invoke#internal + 119 at 49 Officine.debug.dylib 0x108ba1b5b kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$FUNCTION_REFERENCE$41.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 50 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 51 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 52 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 53 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 54 Officine.debug.dylib 0x107efdee3 kfun:androidx.compose.runtime#CompositionLocalProvider(kotlin.Array<out|androidx.compose.runtime.ProvidedValue<>>...;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 55 Officine.debug.dylib 0x108b94b5b kfun:androidx.compose.ui.scene.ComposeSceneMediator.ProvideComposeSceneMediatorCompositionLocals#internal + 1567 at 56 Officine.debug.dylib 0x108b9c43f kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16$lambda$15#internal + 639 at 57 Officine.debug.dylib 0x108ba1c07 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$FUNCTION_REFERENCE$42.invoke#internal + 119 at 58 Officine.debug.dylib 0x108ba1d5b kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$FUNCTION_REFERENCE$42.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 59 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 60 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 61 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 62 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 63 Officine.debug.dylib 0x107efe25f kfun:androidx.compose.runtime#CompositionLocalProvider(androidx.compose.runtime.ProvidedValue<>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 64 Officine.debug.dylib 0x108b1a887 kfun:androidx.compose.ui.scene.BaseComposeScene.setContent$lambda$0#internal + 531 at 65 Officine.debug.dylib 0x108b1b567 kfun:androidx.compose.ui.scene.BaseComposeScene.$setContent$lambda$0$FUNCTION_REFERENCE$6.invoke#internal + 119 at 66 Officine.debug.dylib 0x108b1b6bb kfun:androidx.compose.ui.scene.BaseComposeScene.$setContent$lambda$0$FUNCTION_REFERENCE$6.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 67 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 68 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 69 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 70 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 71 Officine.debug.dylib 0x108ad85d7 kfun:androidx.compose.ui.platform#ProvidePlatformCompositionLocals(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 775 at 72 Officine.debug.dylib 0x108b13e03 kfun:androidx.compose.ui.platform.setContent$lambda$3$lambda$2$lambda$1#internal + 443 at 73 Officine.debug.dylib 0x108b14cf7 kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$lambda$1$FUNCTION_REFERENCE$3.invoke#internal + 115 at 74 Officine.debug.dylib 0x108b14e1f kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$lambda$1$FUNCTION_REFERENCE$3.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 75 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 76 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 77 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 78 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 79 Officine.debug.dylib 0x107efdee3 kfun:androidx.compose.runtime#CompositionLocalProvider(kotlin.Array<out|androidx.compose.runtime.ProvidedValue<>>...;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 80 Officine.debug.dylib 0x108aa3db3 kfun:androidx.compose.ui.platform#ProvideCommonCompositionLocals(androidx.compose.ui.node.Owner;androidx.compose.ui.platform.UriHandler;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 3871 at 81 Officine.debug.dylib 0x108b143c3 kfun:androidx.compose.ui.platform.setContent$lambda$3$lambda$2#internal + 1355 at 82 Officine.debug.dylib 0x108b14ecb kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$FUNCTION_REFERENCE$4.invoke#internal + 119 at 83 Officine.debug.dylib 0x108b1501f kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$FUNCTION_REFERENCE$4.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 84 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 85 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 86 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 87 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 88 Officine.debug.dylib 0x108b139eb kfun:androidx.compose.ui.platform.provide#internal + 1287 at 89 Officine.debug.dylib 0x108b146e7 kfun:androidx.compose.ui.platform.setContent$lambda$3#internal + 687 at 90 Officine.debug.dylib 0x108b148af kfun:androidx.compose.ui.platform.$setContent$lambda$3$FUNCTION_REFERENCE$1.invoke#internal + 123 at 91 Officine.debug.dylib 0x108b14a2f kfun:androidx.compose.ui.platform.$setContent$lambda$3$FUNCTION_REFERENCE$1.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 92 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 93 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 94 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 95 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 96 Officine.debug.dylib 0x108025b77 kfun:androidx.compose.runtime#invokeComposable(androidx.compose.runtime.Composer;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 215 at 97 Officine.debug.dylib 0x107edbd63 kfun:androidx.compose.runtime.ComposerImpl.doCompose#internal + 2563 at 98 Officine.debug.dylib 0x107edaef7 kfun:androidx.compose.runtime.ComposerImpl#composeContent(androidx.compose.runtime.collection.ScopeMap<androidx.compose.runtime.RecomposeScopeImpl,kotlin.Any>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 283 at 99 Officine.debug.dylib 0x107eea4a7 kfun:androidx.compose.runtime.CompositionImpl#composeContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 1119 at 100 Officine.debug.dylib 0x10802d86f kfun:androidx.compose.runtime.ControlledComposition#composeContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 99 at 101 Officine.debug.dylib 0x107f19283 kfun:androidx.compose.runtime.Recomposer#composeInitial(androidx.compose.runtime.ControlledComposition;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 911 at 102 Officine.debug.dylib 0x10802cbe7 kfun:androidx.compose.runtime.CompositionContext#composeInitial(androidx.compose.runtime.ControlledComposition;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 67 at 103 Officine.debug.dylib 0x107ee9797 kfun:androidx.compose.runtime.CompositionImpl.composeInitial#internal + 323 at 104 Officine.debug.dylib 0x107ee953b kfun:androidx.compose.runtime.CompositionImpl#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 95 at 105 Officine.debug.dylib 0x10802d27b kfun:androidx.compose.runtime.Composition#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 99 at 106 Officine.debug.dylib 0x108b1349b kfun:androidx.compose.ui.platform#setContent__at__androidx.compose.ui.node.RootNodeOwner(androidx.compose.runtime.CompositionContext;kotlin.Function0<androidx.compose.runtime.CompositionLocalContext?>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}androidx.compose.runtime.Composition + 535 at 107 Officine.debug.dylib 0x108b34003 kfun:androidx.compose.ui.scene.PlatformLayersComposeSceneImpl.createComposition#internal + 287 at 108 Officine.debug.dylib 0x108c1ce5b kfun:androidx.compose.ui.scene.BaseComposeScene#createComposition(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}androidx.compose.runtime.Composition-trampoline + 67 at 109 Officine.debug.dylib 0x108b16f3b kfun:androidx.compose.ui.scene.BaseComposeScene#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 1755 at 110 Officine.debug.dylib 0x108c181db kfun:androidx.compose.ui.scene.ComposeScene#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 99 at 111 Officine.debug.dylib 0x108b9c66b kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16#internal + 439 at 112 Officine.debug.dylib 0x108b9f627 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$FUNCTION_REFERENCE$18.invoke#internal + 75 at 113 Officine.debug.dylib 0x108b9f723 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$FUNCTION_REFERENCE$18.$<bridge-DNN>invoke(){}#internal + 71 at 114 Officine.debug.dylib 0x107c52647 kfun:kotlin.Function0#invoke(){}1:0-trampoline + 99 at 115 Officine.debug.dylib 0x108ba57ef kfun:androidx.compose.ui.scene.ComposeSceneMediatorView.runOnceOnAppeared$lambda$0#internal + 143 at 116 Officine.debug.dylib 0x108ba58bb kfun:androidx.compose.ui.scene.ComposeSceneMediatorView.$runOnceOnAppeared$lambda$0$FUNCTION_REFERENCE$0.invoke#internal + 75 at 117 Officine.debug.dylib 0x108ba59b7 kfun:androidx.compose.ui.scene.ComposeSceneMediatorView.$runOnceOnAppeared$lambda$0$FUNCTION_REFERENCE$0.$<bridge-DNN>invoke(){}#internal + 71 at 118 Officine.debug.dylib 0x107c52647 kfun:kotlin.Function0#invoke(){}1:0-trampoline + 99 at 119 Officine.debug.dylib 0x108ba4ec7 kfun:androidx.compose.ui.scene.ComposeSceneMediatorView.runOnAppearedIfEligible#internal + 1191 at 120 Officine.debug.dylib 0x108ba512f kfun:androidx.compose.ui.scene.ComposeSceneMediatorView#objc:layoutSubviews + 275 at 121 Officine.debug.dylib 0x108ba5c0b _6f72672e6a6574627261696e732e636f6d706f73652e75693a75692f6f70742f6275696c644167656e742f776f726b2f323262393232303366303037343765302f636f6d706f73652f75692f75692f7372632f75696b69744d61696e2f6b6f746c696e2f616e64726f6964782f636f6d706f73652f75692f7363656e652f436f6d706f73655363656e654d65646961746f72566965772e75696b69742e6b74_knbridge22 + 143 at 122 UIKitCore 0x1860a3417 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2403 at 123 QuartzCore 0x18b335623 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 431 at 124 QuartzCore 0x18b3403f7 _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 123 at 125 QuartzCore 0x18b27242f _ZN2CA7Context18commit_transactionEPNS_11TransactionEdPd + 463 Caused by: kotlin.NullPointerException at 0 Officine.debug.dylib 0x107b0862b kfun:kotlin.Throwable#(){} + 75 at 1 Officine.debug.dylib 0x107b0232f kfun:kotlin.Exception#(){} + 67 at 2 Officine.debug.dylib 0x107b024ff kfun:kotlin.RuntimeException#(){} + 67 at 3 Officine.debug.dylib 0x107b026cf kfun:kotlin.NullPointerException#(){} + 67 at 4 Officine.debug.dylib 0x107b39947 ThrowNullPointerException + 127 at 5 Officine.debug.dylib 0x107aeb587 kfun:kotlinx.cinterop#__at__0:0(){0§<kotlinx.cinterop.CPointed>}kotlinx.cinterop.CPointer<0:0> + 63 at 6 Officine.debug.dylib 0x108935d17 kfun:androidx.lifecycle.viewmodel.internal.SynchronizedObject.Resource.lock#internal + 127 at 7 Officine.debug.dylib 0x10893557b kfun:androidx.lifecycle.viewmodel.internal.SynchronizedObject#lock(){} + 131 at 8 Officine.debug.dylib 0x108933613 kfun:androidx.lifecycle.viewmodel.internal.ViewModelImpl#getCloseable(kotlin.String){0§<kotlin.AutoCloseable>}0:0? + 323 at 9 Officine.debug.dylib 0x108936bff kfun:androidx.lifecycle.ViewModel#getCloseable(kotlin.String){0§<kotlin.AutoCloseable>}0:0? + 175 at 10 Officine.debug.dylib 0x108930097 kfun:androidx.lifecycle#<get-viewModelScope>__at__androidx.lifecycle.ViewModel(){}kotlinx.coroutines.CoroutineScope + 427 at 11 Officine.debug.dylib 0x10727cb0f kfun:com.shabakett.officine.core.utils.flow#stateInWhileSubscribed!androidx.lifecycle.ViewModel__at__kotlinx.coroutines.flow.Flow<0:0>(0:0){0§<kotlin.Any?>}kotlinx.coroutines.flow.StateFlow<0:0> + 195 at 12 Officine.debug.dylib 0x1071704e7 kfun:com.shabakett.officine.core.navigation.screen.NavigationViewModel#(com.shabakett.officine.feature_message.domain.service.NotificationService;com.shabakett.officine.core.domain.service.OverlayService;com.shabakett.officine.core.domain.service.AlertDialogService;com.shabakett.officine.core.domain.service.ToastService;com.shabakett.officine.core.data.repository.PreferencesRepository;com.shabakett.officine.feature_message.domain.service.RealtimeStreamService;com.shabakett.officine.core.navigation.Na + 979 at 13 Officine.debug.dylib 0x1070f14e7 kfun:com.shabakett.officine.core.di.module.common.viewModelModule$lambda$28$lambda$0#internal + 2099 at 14 Officine.debug.dylib 0x10710291f kfun:com.shabakett.officine.core.di.module.common.$viewModelModule$lambda$28$lambda$0$FUNCTION_REFERENCE$1.invoke#internal + 115 at 15 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 16 Officine.debug.dylib 0x108044593 kfun:org.koin.core.instance.InstanceFactory#create(org.koin.core.instance.ResolutionContext){}1:0 + 979 at 17 Officine.debug.dylib 0x108044097 kfun:org.koin.core.instance.FactoryInstanceFactory#get(org.koin.core.instance.ResolutionContext){}1:0 + 103 at 18 Officine.debug.dylib 0x10805ef13 kfun:org.koin.core.instance.InstanceFactory#get(org.koin.core.instance.ResolutionContext){}1:0-trampoline + 67 at 19 Officine.debug.dylib 0x10804f3a3 kfun:org.koin.core.registry.InstanceRegistry#resolveInstance(org.koin.core.qualifier.Qualifier?;kotlin.reflect.KClass<>;org.koin.core.qualifier.Qualifier;org.koin.core.instance.ResolutionContext){0§<kotlin.Any?>}0:0? + 343 at 20 Officine.debug.dylib 0x108057e5b kfun:org.koin.core.scope.Scope.resolveFromRegistry#internal + 323 at 21 Officine.debug.dylib 0x1080572bb kfun:org.koin.core.scope.Scope.resolveFromContext#internal + 1503 at 22 Officine.debug.dylib 0x108056623 kfun:org.koin.core.scope.Scope.stackParametersCall#internal + 871 at 23 Officine.debug.dylib 0x108056273 kfun:org.koin.core.scope.Scope.resolveInstance#internal + 867 at 24 Officine.debug.dylib 0x108055767 kfun:org.koin.core.scope.Scope.resolve#internal + 1019 at 25 Officine.debug.dylib 0x108055337 kfun:org.koin.core.scope.Scope#getWithParameters(kotlin.reflect.KClass<>;org.koin.core.qualifier.Qualifier?;org.koin.core.parameter.ParametersHolder?){0§<kotlin.Any?>}0:0 + 159 at 26 Officine.debug.dylib 0x1097b63d7 kfun:org.koin.viewmodel.factory.KoinViewModelFactory#create(kotlin.reflect.KClass<0:0>;androidx.lifecycle.viewmodel.CreationExtras){0§<androidx.lifecycle.ViewModel>}0:0 + 411 at 27 Officine.debug.dylib 0x1089389b7 kfun:androidx.lifecycle.ViewModelProvider.Factory#create(kotlin.reflect.KClass<0:0>;androidx.lifecycle.viewmodel.CreationExtras){0§<androidx.lifecycle.ViewModel>}0:0-trampoline + 115 at 28 Officine.debug.dylib 0x108938103 kfun:androidx.lifecycle.viewmodel#createViewModel(androidx.lifecycle.ViewModelProvider.Factory;kotlin.reflect.KClass<0:0>;androidx.lifecycle.viewmodel.CreationExtras){0§<androidx.lifecycle.ViewModel>}0:0 + 131 at 29 Officine.debug.dylib 0x108934277 kfun:androidx.lifecycle.viewmodel.ViewModelProviderImpl#getViewModel(kotlin.reflect.KClass<0:0>;kotlin.String){0§<androidx.lifecycle.ViewModel>}0:0 + 1163 at 30 Officine.debug.dylib 0x1089344e7 kfun:androidx.lifecycle.viewmodel.ViewModelProviderImpl#getViewModel$default(kotlin.reflect.KClass<0:0>;kotlin.String?;kotlin.Int){0§<androidx.lifecycle.ViewModel>}0:0 + 311 at 31 Officine.debug.dylib 0x108936ecb kfun:androidx.lifecycle.ViewModelProvider#get(kotlin.reflect.KClass<0:0>){0§<androidx.lifecycle.ViewModel>}0:0 + 183 at 32 Officine.debug.dylib 0x1097b565b kfun:org.koin.viewmodel#resolveViewModel(kotlin.reflect.KClass<0:0>;androidx.lifecycle.ViewModelStore;kotlin.String?;androidx.lifecycle.viewmodel.CreationExtras;org.koin.core.qualifier.Qualifier?;org.koin.core.scope.Scope;kotlin.Function0<org.koin.core.parameter.ParametersHolder>?){0§<androidx.lifecycle.ViewModel>}0:0 + 711 at 33 Officine.debug.dylib 0x106ff40fb kfun:com.shabakett.officine#App(com.shabakett.officine.core.navigation.screen.NavigationViewModel?;androidx.compose.runtime.Composer?;kotlin.Int;kotlin.Int){} + 2375 at 34 Officine.debug.dylib 0x1076ae8e3 kfun:com.shabakett.officine.ComposableSingletons$MainViewControllerKt.$lambda$0#internal + 411 at 35 Officine.debug.dylib 0x1076ae9b3 kfun:com.shabakett.officine.ComposableSingletons$MainViewControllerKt.$$lambda$0$FUNCTION_REFERENCE$0.invoke#internal + 95 at 36 Officine.debug.dylib 0x1076aea67 kfun:com.shabakett.officine.ComposableSingletons$MainViewControllerKt.$$lambda$0$FUNCTION_REFERENCE$0.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 37 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 38 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 39 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 40 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 41 Officine.debug.dylib 0x107efdee3 kfun:androidx.compose.runtime#CompositionLocalProvider(kotlin.Array<out|androidx.compose.runtime.ProvidedValue<>>...;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 42 Officine.debug.dylib 0x108b88057 kfun:androidx.compose.ui.scene.ComposeHostingViewController.ProvideContainerCompositionLocals#internal + 1875 at 43 Officine.debug.dylib 0x108b890df kfun:androidx.compose.ui.scene.ComposeHostingViewController.createMediator$lambda$4#internal + 475 at 44 Officine.debug.dylib 0x108b8ac4b kfun:androidx.compose.ui.scene.ComposeHostingViewController.$createMediator$lambda$4$FUNCTION_REFERENCE$10.invoke#internal + 115 at 45 Officine.debug.dylib 0x108b8ad73 kfun:androidx.compose.ui.scene.ComposeHostingViewController.$createMediator$lambda$4$FUNCTION_REFERENCE$10.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 46 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 47 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 48 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 49 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 50 Officine.debug.dylib 0x108aed98f kfun:androidx.compose.ui.layout#OverlayLayout(androidx.compose.ui.Modifier;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 3159 at 51 Officine.debug.dylib 0x108b35d9f kfun:androidx.compose.ui.viewinterop#TrackInteropPlacementContainer__at__androidx.compose.ui.viewinterop.InteropContainer(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 1947 at 52 Officine.debug.dylib 0x108b9be57 kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16$lambda$15$lambda$14$lambda$13#internal + 507 at 53 Officine.debug.dylib 0x108ba1807 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$lambda$13$FUNCTION_REFERENCE$40.invoke#internal + 119 at 54 Officine.debug.dylib 0x108ba195b kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$lambda$13$FUNCTION_REFERENCE$40.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 55 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 56 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 57 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 58 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 59 Officine.debug.dylib 0x108ae87d7 kfun:androidx.compose.ui.layout#OffsetToFocusedRect(androidx.compose.ui.platform.PlatformInsets;kotlin.Function0<androidx.compose.ui.geometry.Rect?>;androidx.compose.ui.unit.IntSize?;kotlin.time.Duration;kotlin.Function0<kotlin.Unit>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 8051 at 60 Officine.debug.dylib 0x108b95aef kfun:androidx.compose.ui.scene.ComposeSceneMediator.FocusAboveKeyboardIfNeeded#internal + 3683 at 61 Officine.debug.dylib 0x108b9c14b kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16$lambda$15$lambda$14#internal + 639 at 62 Officine.debug.dylib 0x108ba1a07 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$FUNCTION_REFERENCE$41.invoke#internal + 119 at 63 Officine.debug.dylib 0x108ba1b5b kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$lambda$14$FUNCTION_REFERENCE$41.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 64 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 65 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 66 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 67 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 68 Officine.debug.dylib 0x107efdee3 kfun:androidx.compose.runtime#CompositionLocalProvider(kotlin.Array<out|androidx.compose.runtime.ProvidedValue<>>...;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 69 Officine.debug.dylib 0x108b94b5b kfun:androidx.compose.ui.scene.ComposeSceneMediator.ProvideComposeSceneMediatorCompositionLocals#internal + 1567 at 70 Officine.debug.dylib 0x108b9c43f kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16$lambda$15#internal + 639 at 71 Officine.debug.dylib 0x108ba1c07 kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$FUNCTION_REFERENCE$42.invoke#internal + 119 at 72 Officine.debug.dylib 0x108ba1d5b kfun:androidx.compose.ui.scene.ComposeSceneMediator.$setContent$lambda$16$lambda$15$FUNCTION_REFERENCE$42.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 73 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 74 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 75 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 76 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 77 Officine.debug.dylib 0x107efe25f kfun:androidx.compose.runtime#CompositionLocalProvider(androidx.compose.runtime.ProvidedValue<>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 78 Officine.debug.dylib 0x108b1a887 kfun:androidx.compose.ui.scene.BaseComposeScene.setContent$lambda$0#internal + 531 at 79 Officine.debug.dylib 0x108b1b567 kfun:androidx.compose.ui.scene.BaseComposeScene.$setContent$lambda$0$FUNCTION_REFERENCE$6.invoke#internal + 119 at 80 Officine.debug.dylib 0x108b1b6bb kfun:androidx.compose.ui.scene.BaseComposeScene.$setContent$lambda$0$FUNCTION_REFERENCE$6.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 81 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 82 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 83 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 84 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 85 Officine.debug.dylib 0x108ad85d7 kfun:androidx.compose.ui.platform#ProvidePlatformCompositionLocals(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 775 at 86 Officine.debug.dylib 0x108b13e03 kfun:androidx.compose.ui.platform.setContent$lambda$3$lambda$2$lambda$1#internal + 443 at 87 Officine.debug.dylib 0x108b14cf7 kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$lambda$1$FUNCTION_REFERENCE$3.invoke#internal + 115 at 88 Officine.debug.dylib 0x108b14e1f kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$lambda$1$FUNCTION_REFERENCE$3.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 89 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 90 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 91 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 92 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 93 Officine.debug.dylib 0x107efdee3 kfun:androidx.compose.runtime#CompositionLocalProvider(kotlin.Array<out|androidx.compose.runtime.ProvidedValue<>>...;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 611 at 94 Officine.debug.dylib 0x108aa3db3 kfun:androidx.compose.ui.platform#ProvideCommonCompositionLocals(androidx.compose.ui.node.Owner;androidx.compose.ui.platform.UriHandler;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>;androidx.compose.runtime.Composer?;kotlin.Int){} + 3871 at 95 Officine.debug.dylib 0x108b143c3 kfun:androidx.compose.ui.platform.setContent$lambda$3$lambda$2#internal + 1355 at 96 Officine.debug.dylib 0x108b14ecb kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$FUNCTION_REFERENCE$4.invoke#internal + 119 at 97 Officine.debug.dylib 0x108b1501f kfun:androidx.compose.ui.platform.$setContent$lambda$3$lambda$2$FUNCTION_REFERENCE$4.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 98 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 99 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 100 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 101 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 102 Officine.debug.dylib 0x108b139eb kfun:androidx.compose.ui.platform.provide#internal + 1287 at 103 Officine.debug.dylib 0x108b146e7 kfun:androidx.compose.ui.platform.setContent$lambda$3#internal + 687 at 104 Officine.debug.dylib 0x108b148af kfun:androidx.compose.ui.platform.$setContent$lambda$3$FUNCTION_REFERENCE$1.invoke#internal + 123 at 105 Officine.debug.dylib 0x108b14a2f kfun:androidx.compose.ui.platform.$setContent$lambda$3$FUNCTION_REFERENCE$1.$<bridge-DNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}#internal + 159 at 106 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 107 Officine.debug.dylib 0x1080135c3 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any? + 607 at 108 Officine.debug.dylib 0x108021667 kfun:androidx.compose.runtime.internal.ComposableLambdaImpl#$<bridge-NNNNU>invoke(androidx.compose.runtime.Composer;kotlin.Int){}kotlin.Any?(androidx.compose.runtime.Composer;kotlin.Any?){}kotlin.Any? + 163 at 109 Officine.debug.dylib 0x107c5588b kfun:kotlin.Function2#invoke(1:0;1:1){}1:2-trampoline + 115 at 110 Officine.debug.dylib 0x108025b77 kfun:androidx.compose.runtime#invokeComposable(androidx.compose.runtime.Composer;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 215 at 111 Officine.debug.dylib 0x107edbd63 kfun:androidx.compose.runtime.ComposerImpl.doCompose#internal + 2563 at 112 Officine.debug.dylib 0x107edaef7 kfun:androidx.compose.runtime.ComposerImpl#composeContent(androidx.compose.runtime.collection.ScopeMap<androidx.compose.runtime.RecomposeScopeImpl,kotlin.Any>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 283 at 113 Officine.debug.dylib 0x107eea4a7 kfun:androidx.compose.runtime.CompositionImpl#composeContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 1119 at 114 Officine.debug.dylib 0x10802d86f kfun:androidx.compose.runtime.ControlledComposition#composeContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 99 at 115 Officine.debug.dylib 0x107f19283 kfun:androidx.compose.runtime.Recomposer#composeInitial(androidx.compose.runtime.ControlledComposition;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 911 at 116 Officine.debug.dylib 0x10802cbe7 kfun:androidx.compose.runtime.CompositionContext#composeInitial(androidx.compose.runtime.ControlledComposition;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 67 at 117 Officine.debug.dylib 0x107ee9797 kfun:androidx.compose.runtime.CompositionImpl.composeInitial#internal + 323 at 118 Officine.debug.dylib 0x107ee953b kfun:androidx.compose.runtime.CompositionImpl#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 95 at 119 Officine.debug.dylib 0x10802d27b kfun:androidx.compose.runtime.Composition#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 99 at 120 Officine.debug.dylib 0x108b1349b kfun:androidx.compose.ui.platform#setContent__at__androidx.compose.ui.node.RootNodeOwner(androidx.compose.runtime.CompositionContext;kotlin.Function0<androidx.compose.runtime.CompositionLocalContext?>;kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}androidx.compose.runtime.Composition + 535 at 121 Officine.debug.dylib 0x108b34003 kfun:androidx.compose.ui.scene.PlatformLayersComposeSceneImpl.createComposition#internal + 287 at 122 Officine.debug.dylib 0x108c1ce5b kfun:androidx.compose.ui.scene.BaseComposeScene#createComposition(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}androidx.compose.runtime.Composition-trampoline + 67 at 123 Officine.debug.dylib 0x108b16f3b kfun:androidx.compose.ui.scene.BaseComposeScene#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){} + 1755 at 124 Officine.debug.dylib 0x108c181db kfun:androidx.compose.ui.scene.ComposeScene#setContent(kotlin.Function2<androidx.compose.runtime.Composer,kotlin.Int,kotlin.Unit>){}-trampoline + 99 at 125 Officine.debug.dylib 0x108b9c66b kfun:androidx.compose.ui.scene.ComposeSceneMediator.setContent$lambda$16#internal + 439

-- End of trace --

To Reproduce

Implement Koin for dependency injection in a KMM project. Create a ViewModel interface HousesViewModel and implement it with HousesViewModelImpl. Bind the implementation to the interface using Koin. Use the ViewModel in the Android Compose NavHost graph. Run the application on Android (works as expected). Run the application on iOS (error occurs).

Expected behavior A clear and concise description of what you expected to happen.

Koin module and version:

agp = "8.6.1" kotlin = "2.1.10" kotlin-serialization = "1.7.3" navigation = "2.8.0-alpha11" kotlinx-datetime = "0.6.1"

Github

napier = "2.7.1" konnectivity = "0.1-alpha01" human-readable = "1.10.0"

DI

koin = "4.0.2"

#Api ktor = "3.0.3"

datastore = "1.1.2"

paging-version = "3.3.0-alpha02-0.5.1"

google-services = "4.4.2"

firebaseBom = "33.8.0" firebase-crashlytics-plugin = "3.0.2"

kmp-notifier = "1.4.0"

androidx-lifecycle-viewmodel = { group = "org.jetbrains.androidx.lifecycle", name = "lifecycle-viewmodel", version.ref = "androidx-lifecycle" } androidx-lifecycle-runtime-compose = { group = "org.jetbrains.androidx.lifecycle", name = "lifecycle-runtime-compose", version.ref = "androidx-lifecycle" }

kotlin-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlin-serialization" }

navigation-compose = { module = "org.jetbrains.androidx.navigation:navigation-compose", version.ref = "navigation" }

napier = { module = "io.github.aakira:napier", version.ref = "napier" }

koin-test = { module = "io.insert-koin:koin-test", version.ref = "koin" } koin-core = { module = "io.insert-koin:koin-core", version.ref = "koin" } koin-android = { module = "io.insert-koin:koin-android", version.ref = "koin" } koin-androidx-compose = { module = "io.insert-koin:koin-androidx-compose", version.ref = "koin" } koin-compose = { module = "io.insert-koin:koin-compose", version.ref = "koin" } koin-compose-viewmodel = { module = "io.insert-koin:koin-compose-viewmodel", version.ref = "koin" }

ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" } ktor-client-darwin = { module = "io.ktor:ktor-client-darwin", version.ref = "ktor" } ktor-client-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" } ktor-client-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" } ktor-serialization-kotlinx-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" } ktor-client-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor" } ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" }

datastore = { module = "androidx.datastore:datastore", version.ref = "datastore" } datastore-preferences = { module = "androidx.datastore:datastore-preferences", version.ref = "datastore" }

konnectivity = { module = "com.plusmobileapps:konnectivity", version.ref = "konnectivity" }

kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "kotlinx-datetime" }

firebase-bom = { module = "com.google.firebase:firebase-bom", version.ref = "firebaseBom" } firebase-analytics = { module = "com.google.firebase:firebase-analytics" } firebase-crashlyticsKtx = { module = "com.google.firebase:firebase-crashlytics-ktx" }

kmp-notifier = { module = "io.github.mirzemehdi:kmpnotifier", version.ref = "kmp-notifier" }

[plugins] androidApplication = { id = "com.android.application", version.ref = "agp" } androidLibrary = { id = "com.android.library", version.ref = "agp" } jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "compose-plugin" }

Firebase

firebase-crashlytics = { id = "com.google.firebase.crashlytics", version.ref = "firebase-crashlytics-plugin"}

compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } kotlinSerialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }

Snippet or Sample project to help reproduce

### AppModule

val appModule = module { singleOf(::OverlayServiceImpl).bind<OverlayService>() singleOf(::AlertDialogServiceImpl).bind<AlertDialogService>() singleOf(::ToastServiceImpl).bind<ToastService>()

singleOf(::ClientsServiceImpl).bind<ClientsService>()
singleOf(::PharmaciesServiceImpl).bind<PharmaciesService>()
singleOf(::SuppliersServiceImpl).bind<SuppliersService>()

singleOf(::SaleServiceImpl).bind<SaleService>()
singleOf(::PurchaseServiceImpl).bind<PurchaseService>()
singleOf(::ProductServiceImpl).bind<ProductService>()
singleOf(::EchangeServiceImpl).bind<EchangeService>()
singleOf(::StockServiceImpl).bind<StockService>()
singleOf(::BordereauServiceImpl).bind<BordereauService>()
singleOf(::ChifaServiceImpl).bind<ChifaService>()
singleOf(::StatsServiceImpl).bind<StatsService>()
singleOf(::InventaireServiceImpl).bind<InventaireService>()
singleOf(::SkuServiceImpl).bind<SkuService>()
singleOf(::BugReportServiceImpl).bind<BugReportService>()

singleOf(::MessagerieServiceImpl).bind<MessagerieService>()
singleOf(::GroupServiceImpl).bind<GroupService>()

singleOf(::PocketBaseAuthServiceImpl).bind<PocketBaseAuthService>()
singleOf(::RealtimeStreamServiceImpl).bind<RealtimeStreamService>()

singleOf(::MessagerieUserServiceImpl).bind<MessagerieUserService>()

singleOf(::NotificationServiceImpl).bind<NotificationService>()

singleOf(::DefaultNavigator).bind<Navigator>()

single { Konnectivity() }

}

### AuthModule

val authModule = module { single { AuthServiceImpl(get()) }.bind<AuthService>() single { createHttpClient() } }

### ViewModuleModel

val viewModelModule = module { viewModelOf(::NavigationViewModel)

viewModelOf(::SignInViewModel)
viewModelOf(::ForgotPasswordViewModel)

viewModelOf(::HomeViewModel)
viewModelOf(::NotificationViewModel)
viewModelOf(::SettingViewModel)

viewModelOf(::ThirdPartiesViewModel)
viewModelOf(::ClientDetailsViewModel)
viewModelOf(::SupplierDetailsViewModel)
viewModelOf(::PharmacyDetailsViewModel)

viewModelOf(::SalesViewModel)
viewModelOf(::SaleDetailsViewModel)

viewModelOf(::PurchasesViewModel)
viewModelOf(::PurchaseDetailsViewModel)

viewModelOf(::EchangesViewModel)
viewModelOf(::EchangeExitDetailsViewModel)
viewModelOf(::EchangeEntranceDetailsViewModel)

viewModelOf(::StocksViewModel)

viewModelOf(::BordereauxViewModel)

viewModelOf(::BordereauDetailsViewModel)

viewModelOf(::FactureDetailsViewModel)

viewModelOf(::InventaireViewModel)

viewModelOf(::StockDetailsViewModel)

viewModelOf(::StatsViewModel)

viewModelOf(::BugReportViewModel)

viewModelOf(::MessagerieViewModel)
viewModelOf(::ConversationDetailsViewModel)
viewModelOf(::CreateNewConversationViewModel)

}

### SharedRepositoryModule

expect val sharedRepositoryModule: Module

### InitKoin

fun initKoin(config: KoinAppDeclaration? = null) { startKoin { config?.invoke(this) modules( appModule, authModule, sharedRepositoryModule, viewModelModule ) } }

MainViewController

fun MainViewController() = ComposeUIViewController( configure = { DeviceInfo() } ) { App() }

SharedRepositoryModule.ios

actual val sharedRepositoryModule = module { single { PreferencesRepository(createDataStore()) } }

iOSApp

class AppDelegate: NSObject, UIApplicationDelegate {

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
    FirebaseApp.configure() //important
    //By default showPushNotification value is true.
    //When set showPushNotification to false foreground push  notification will not be shown.
    //You can still get notification content using #onPushNotification listener method.
    NotifierManager.shared.initialize(configuration: NotificationPlatformConfigurationIos(
        showPushNotification: true,
        askNotificationPermissionOnStart: true,
        notificationSoundName: "default")
    )

    return true
}

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Foundation.Data) {
        Messaging.messaging().apnsToken = deviceToken
    }

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any]) async -> UIBackgroundFetchResult {
    NotifierManager.shared.onApplicationDidReceiveRemoteNotification(userInfo: userInfo)
    return UIBackgroundFetchResult.newData
}

}

@main struct iOSApp: App {

@UIApplicationDelegateAdaptor(AppDelegate.self) var delegate

init() {
    InitKoinKt.doInitKoin()
}

var body: some Scene {
    WindowGroup {
        ContentView()
    }
}

}

I'm blocked on this since 2 weeks now... I don't know what to do...

Sorry for thethis very long message.

Feinate avatar Jan 31 '25 00:01 Feinate

I have a similar error

alekseyHunter avatar Feb 13 '25 11:02 alekseyHunter

If you have a context receiver like context(viewModelScope) in your code, this is the problem, i wasn't able to solve this in iOS side.

Feinate avatar Feb 13 '25 11:02 Feinate

I had a similar error and started looking at the error searching for my package, in your case com.shabakett. Start from bottom to top and review every single Koin module mentioned or any class that you own.

In my case, it pointed to "No definition type found for ...", so there's a high chance you have something wrong there that you forgot to update on iOS or did something strange... Good luck!

robercoding avatar May 02 '25 17:05 robercoding

Hi @Feinate , I am also getting the same InstanceCreationException in the android build also.

Repo to reproduce: https://github.com/kpatel2000/mobile-wallet/tree/MW-189_ktorfit_anr Steps to reproduce

  1. Run the app
  2. Login
  3. Create Passcode
  4. After creation, it is crashing while creating HomeViewModel instance.

Any solution for this one?

kpatel2000 avatar May 09 '25 16:05 kpatel2000

I get the same org.koin.core.error.InstanceCreationException: Could not create instance for '[Factory:..myViewModel after upgrading Kotlin and ksp version to 2.1.21 and changing "ksp" annotation to "kspCommonMainMetadata" returning ksp version to 2.0.20 and to "ksp" annotation work fine

zinfine avatar May 31 '25 07:05 zinfine

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Oct 28 '25 07:10 stale[bot]