إصدار 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. 🎉
تعلم Kotlin مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 30
- الدروس
- 120
الأسئلة الشائعة
هل درس «إصدار 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 يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تهيئة maven-publish لـ KMP
- إصدار XCFramework لـ iOS
- إدارة الإصدارات واستقرار API
- الإصدار إلى Maven Central وSPM