0Pricing
Kotlin Multiplatform Academy · Урок

Запуск 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 — локальная установка не требуется.

Все уроки этого курса

  1. Объявление общего модуля Koin
  2. Области single и factory
  3. Запуск Koin на Android и iOS
  4. Внедрение в ViewModels и репозитории
← Назад к Kotlin Multiplatform Academy