Abhishek Bansal
07/06/2020, 10:27 AMCaused by k.a.c.f.e: No definition found for '<package>.h' has been found. Check your module definitions.
at org.koin.core.scope.Scope.findDefinition(Scope.java:52)
at org.koin.core.scope.Scope.resolveInstance(Scope.java)
at org.koin.core.scope.Scope.get(Scope.java:123)
at org.koin.androidx.viewmodel.ViewModelResolutionKt$createViewModelProvider$1.create(ViewModelResolutionKt.java:25)
at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:37)
at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:23)
at org.koin.androidx.viewmodel.ViewModelResolutionKt.getInstance(ViewModelResolutionKt.java:119)
at org.koin.androidx.viewmodel.ViewModelResolutionKt.getViewModel(ViewModelResolutionKt.java:26)
This even happens in local testingtynn
07/07/2020, 8:17 AM<package>.h
and create a viewModel<h> { h() }
provider.Abhishek Bansal
07/07/2020, 8:19 AMAbhishek Bansal
07/07/2020, 8:21 AMtynn
07/07/2020, 9:28 AMAbhishek Bansal
07/07/2020, 11:35 AMOpen App Again
) Since Application
class only loads 2nd type of modules app crashes because there are no definitions available via Koin
I have tested and confirmed this but now, what is the best way to do this. Currently I placed this in every Activity
fun login() {
try {
loadKoinModules(listOf(authenticatedModules, authenticatedViewModels))
} catch (e: DefinitionOverrideException) {
// fail silently
}
}