Поставка XCFramework для iOS
Соберите распространяемый фреймворк для пользователей Swift.
«Поставка XCFramework для iOS» — бесплатный урок Kotlin Multiplatform Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Multiplatform Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
iOS Needs a Framework
Swift consumers cannot use a Maven JAR. They expect an Apple-native bundle, and the modern format for that is the XCFramework. 🍎
What an XCFramework Is
An XCFramework packages compiled binaries for several architectures in one bundle, so it works on devices and simulators alike.
Why Not a Plain Framework
An old fat framework mixed device and simulator slices and broke on Apple Silicon. The XCFramework keeps each slice separate and clean.
Declare Your iOS Targets
List the iOS targets you support in the kotlin block. Each one becomes a slice inside the final XCFramework bundle.
kotlin {
iosArm64()
iosSimulatorArm64()
}Name the Framework
Give your framework a clear baseName. Swift code imports it by exactly this name, so pick something the iOS team will recognize.
binaries.framework {
baseName = "Shared"
}Build the XCFramework
The Kotlin plugin adds an assembleXCFramework task that compiles every iOS target and bundles them together for you.
./gradlew :shared:assembleSharedXCFrameworkStatic vs Dynamic
A static framework links into the app at build time, while a dynamic one loads at launch. Static is the common default for KMP libraries.
Find the Output
The finished bundle lands in your build folder as Shared.xcframework. That single file is what iOS developers will integrate.
Add It in Xcode
iOS devs drag the bundle into their project and add it under Frameworks. From there, Swift can import and call your shared API.
import Shared
let greeting = Greeting().greet()Distribute as a Zip
For sharing, zip the bundle and host it somewhere downloadable. A checksum lets consumers verify the file arrived intact.
Rebuild on Every Change
The XCFramework is a snapshot of your code. After shared changes, reassemble it so iOS gets the latest logic instead of stale binaries.
Quick Check
Let's check your iOS packaging knowledge.
Recap
Declare your iOS targets, name the framework, run assembleXCFramework, then hand the bundle to Xcode for Swift to import. 🎉
Часто задаваемые вопросы
Урок «Поставка XCFramework для iOS» бесплатный?
Да — полный текст урока «Поставка XCFramework для iOS» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Multiplatform Academy, подпишись на CoddyKit PRO. Курс Kotlin Multiplatform Academy содержит 4 уроков всего.
Чему я научусь в уроке «Поставка XCFramework для iOS»?
Соберите распространяемый фреймворк для пользователей Swift. Ты практикуешь Kotlin Multiplatform Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Kotlin Multiplatform Academy?
Предыдущий опыт не требуется. Kotlin Multiplatform Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Поставка XCFramework для iOS»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Kotlin Multiplatform Academy?
Да. Каждый урок Kotlin Multiplatform Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Настройка maven-publish для KMP
- Поставка XCFramework для iOS
- Версионирование и стабильность API
- Публикация в Maven Central и SPM