Kotlin Multiplatform Academy · Урок

Добавление Ktor и выбор движков платформы

Подключайте движки OkHttp и Darwin для каждой цели

Урок 1 из 413 шагов

«Добавление Ktor и выбор движков платформы» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

One HTTP Client Everywhere

Ktor Client is a multiplatform HTTP library, so you write networking once in commonMain and it runs on Android and iOS alike.

Core Plus Engine

Ktor splits into a shared core and per-platform engines. The core gives the API, the engine does the actual socket work.

Add the Core Dependency

In your shared module you add ktor-client-core to commonMain so every target can build requests with the same API.

implementation("io.ktor:ktor-client-core:2.3.12")

Android Wants OkHttp

For Android you pick the OkHttp engine, a battle-tested JVM client that Ktor wraps cleanly behind its shared API.

implementation("io.ktor:ktor-client-okhttp:2.3.12")

iOS Wants Darwin

For iOS you pick the Darwin engine, which runs on Apple's native URLSession under the hood for true platform networking.

implementation("io.ktor:ktor-client-darwin:2.3.12")

Engines Live in Source Sets

Each engine belongs in its own source set: OkHttp in androidMain and Darwin in iosMain, never in commonMain.

androidMain.dependencies { implementation(okhttp) }

Create the Client Once

In commonMain you create an HttpClient with no engine argument, and Ktor auto-selects the one bundled for that platform.

val client = HttpClient()

Auto Engine Selection

Because only one engine ships per target, Ktor's auto-selection finds it. Your shared code stays free of any platform import.

Or Pass an Engine

You can also pass an engine explicitly, which is handy when you want per-platform config like timeouts or proxies.

val client = HttpClient(OkHttp)

Close When Done

The client holds real resources, so call close when you no longer need it to release connections cleanly.

client.close()

Why Split This Way

This core-plus-engine design lets Ktor reuse each OS's best networking stack while you keep one shared API for all of them.

Quick Check

Which engine should an iOS target use?

Recap

Ktor shares a core API but needs an engine per platform: OkHttp for Android, Darwin for iOS. Auto-selection keeps shared code clean.

Можно начать бесплатно

Изучай Kotlin с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Добавление Ktor и выбор движков платформы» бесплатный?

Да — полный текст урока «Добавление Ktor и выбор движков платформы» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.

Чему я научусь в уроке «Добавление Ktor и выбор движков платформы»?

Подключайте движки OkHttp и Darwin для каждой цели Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?

Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Добавление Ktor и выбор движков платформы»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?

Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

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

  1. Добавление Ktor и выбор движков платформы
  2. Ваш первый запрос GET
  3. POST, заголовки и параметры запроса
  4. Тайм-ауты, журналирование и базовые URL
← Назад к Kotlin Multiplatform Academy