Koin не запущен в многомодульном проектеAndroid

Форум для тех, кто программирует под Android
Anonymous
Koin не запущен в многомодульном проекте

Сообщение Anonymous »

Я использую Koin для внедрения некоторых классов.
Я следовал официальному документу Koin, но всякий раз, когда я запускаю свое приложение, оно вылетает. Мой проект состоит из нескольких модулей, но все мои инъекции используются в одном модуле.
Определение моего модуля Koin:

Код: Выделить всё

val databaseModule = module {
factory { provideIoDispatcher() }
single { provideHerowDatabase(get()) }
single { provideZoneDAO(get()) }
single { providePoiDAO(get()) }
single { provideCampaignDAO(get()) }
single { provideZoneRepository(get()) }
single { providePoiRepository(get()) }
single { provideCampaignRepository(get()) }
}

private fun provideIoDispatcher(): CoroutineDispatcher = Dispatchers.IO

/** and so on **/
Класс приложения:

Код: Выделить всё

class DetectionApplication : Application(), Configuration.Provider {

override fun getWorkManagerConfiguration(): Configuration = Configuration.Builder()
.setMinimumLoggingLevel(android.util.Log.INFO)
.build()

override fun onCreate() {
super.onCreate()

startKoin {
androidLogger()
androidContext(this@DetectionApplication)
modules(listOf(databaseModule))
}
}
}
Файл манифеста:

Код: Выделить всё















android:name="androidx.work.impl.WorkManagerInitializer"
android:authorities="${applicationId}.workmanager-init"
tools:node="merge" />


Точка входа в мой проект

Код: Выделить всё

class HerowInitializer private constructor(val context: Context) : KoinComponent {

//Koin
private val ioDispatcher: CoroutineDispatcher by inject()

init {
loadIdentifiers(context)
}

private fun loadIdentifiers(context: Context) {
CoroutineScope(ioDispatcher).launch {

/** code  **/
}
}
Ошибка:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/685 ... es-project

Вернуться в «Android»