Запуск Koin на Android и iOS
Инициализируйте граф из точки входа каждой платформы
«Запуск Koin на Android и iOS» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
A Module Needs Starting
Declaring modules is only half the job. Each platform must start Koin at launch so the container is ready before anything asks for a dependency.
A Shared Init Helper
Put the common startup in shared code with a small initKoin function. Both platforms call it, so the wiring never drifts apart.
fun initKoin() = startKoin {
modules(appModule())
}Pass Extra Platform Config
Give initKoin a parameter so each platform can append its own setup, like Android needing the application context.
fun initKoin(extra: KoinAppDeclaration = {}) =
startKoin { extra(); modules(appModule()) }Start Koin on Android
On Android, call initKoin from your Application class so the graph exists for the whole process lifetime.
class App : Application() {
override fun onCreate() {
super.onCreate()
initKoin()
}
}Give Android the Context
Android modules often need a Context. Pass it through the extra block using androidContext so definitions can resolve it.
initKoin { androidContext(this@App) }Register the Application Class
Remember to point your manifest at the custom Application class, or onCreate never runs and Koin never starts.
Start Koin on iOS
On iOS you call the same initKoin through the generated framework, typically from your SwiftUI App init or AppDelegate.
Call It from Swift
Koin exposes a tiny helper so Swift can launch the graph in one clean line at app startup. 🍎
// Swift
KoinKt.doInitKoin()Start Only Once
Call startKoin a single time per app launch. Starting it twice throws an error, so keep init in one obvious entry point.
Add Logging While Learning
Turn on printLogger during development so Koin prints what it builds, making missing-definition mistakes easy to spot.
startKoin {
printLogger()
modules(appModule())
}One Graph, Two Entry Points
The key idea: the same modules load from two platform entry points. Android uses its Application, iOS uses its App init, both share the wiring.
Quick Check
Where should startup logic live?
Recap
You exposed a shared initKoin, called it from Android's Application and iOS's App init, and learned to start it once with optional logging. The graph is live on both. ✅
Часто задаваемые вопросы
Урок «Запуск Koin на Android и iOS» бесплатный?
Да — полный текст урока «Запуск Koin на Android и iOS» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.
Чему я научусь в уроке «Запуск Koin на Android и iOS»?
Инициализируйте граф из точки входа каждой платформы Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?
Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Запуск Koin на Android и iOS»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?
Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Объявление общего модуля Koin
- Области single и factory
- Запуск Koin на Android и iOS
- Внедрение в ViewModels и репозитории