تتيح منصة Kotlin المتعدّدة (KMP) مشاركة رموز Kotlin البرمجية على مختلف الأنظمة الأساسية. تم تطوير Kotlin Multiplatform بواسطة JetBrains، وتتيح Google استخدامها رسميًا لمشاركة منطق النشاط التجاري بين Android وiOS. استخدام KMP لاستهداف الأنظمة الأساسية للأجهزة الجوّالة ثابت وجاهز للاستخدام في بيئة الإنتاج.
مكتبات Jetpack المتوافقة مع الأنظمة الأساسية المتعددة
تم نقل العديد من مكتبات Jetpack للاستفادة من KMP. توفّر مكتبات Jetpack التالية إمكانية استخدام KMP:
رقم تعريف مجموعة Maven | آخر الأخبار | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأوّلي | المستندات |
---|---|---|---|---|---|---|
التعليق التوضيحي (*) | 16 يوليو 2025 | 1.9.1 | - | - | - | |
مجموعة | 12 مارس 2025 | 1.5.0 | - | - | - | |
datastore | 20 مايو 2025 | 1.1.7 | - | - | 1.2.0-alpha02 | المستندات |
رحلة المستخدِم (*) | 30 يوليو 2025 | 2.9.2 | - | - | 2.10.0-alpha01 | |
تقسيم المحتوى إلى صفحات (*) | 30 يوليو 2025 | 3.3.6 | - | - | 3.4.0-alpha02 | |
room | 1 أغسطس 2025 | 2.7.2 | - | 2.8.0-beta01 | - | المستندات |
savedstate | 30 يوليو 2025 | 1.3.1 | - | - | 1.4.0-alpha01 | |
sqlite | 1 أغسطس 2025 | 2.5.2 | - | 2.6.0-beta01 | - | المستندات |
المستندات المرجعية
تحدّد المستندات المرجعية لهذه المكتبات (على سبيل المثال،
DataStoreFactory
) واجهات برمجة التطبيقات استنادًا إلى مدى توفّرها للرموز البرمجية الشائعة وAndroid وNative.
يمكنك أيضًا فلترة بيانات الإفصاح حسب المنصة في أعلى كل صفحة. يوضّح الجدول التالي معنى كل علامة.
المنصّات المعتمدة
تتضمّن إصدارات مكتبة Jetpack للمنصّتَين المتوافقتَين رسميًا، Android وiOS، متطلبات الجودة والتوافق نفسها. ومع ذلك، بينما نعمل على توسيع نطاق توافق Jetpack مع Kotlin Multiplatform ليشمل منصات أخرى، قد يكون الدعم الخاص بالأدوات والبنية الأساسية قيد التطوير.
يمكن تلخيص مستوى الدعم الحالي لكل منصة في فئات:
المستوى 1:
- تم اختبارها بالكامل في عملية الدمج المتواصل، بما في ذلك الاختبارات التي يتم إجراؤها على الجهاز وعلى المضيف
- تتبُّع توافق المصدر والتوافق الثنائي وفقًا لسياساتنا المتعلّقة بالإصدارات الدلالية
المستوى 2:
- تم اختبارها جزئيًا على نظام التكامل المستمر، وهي تقتصر على الاختبارات من جهة المضيف
- لا يتم تتبُّع التوافق مع المصدر أو التوافق الثنائي
المستوى 3:
- لم يتم اختبارها على نظام الدمج المتواصل
- لا يتم تتبُّع التوافق مع المصدر أو التوافق الثنائي
النظام الأساسي | مستوى الدعم |
---|---|
Android | صف 1 |
JVM | صف 1 |
iOS | صف 1 |
نظام التشغيل Mac | صف 2 |
Linux | صف 2 |
watchOS | موظّفو الدعم من المستوى 3 |
tvOS | موظّفو الدعم من المستوى 3 |
نظام التشغيل Windows | موظّفو الدعم من المستوى 3 |
JavaScript | موظّفو الدعم من المستوى 3 |
WASM | موظّفو الدعم من المستوى 3 |
دعم الأدوات
يمكنك فتح مشاريع متعددة المنصات وتعديلها وتشغيلها في "استوديو Android". ومع ذلك، لا تتوفّر بعض ميزات بيئة التطوير المتكاملة (IDE) لهذه المشاريع بعد.
إنشاء وحدة KMP جديدة باستخدام "استوديو Android"
يمكنك بدء عملية نقل البيانات إلى KMP من خلال إنشاء وحدة مشترَكة في KMP ضمن "استوديو Android". تطبِّق هذه الوحدة تلقائيًا جميع المكوّنات الإضافية اللازمة، بما في ذلك المكوّن الإضافي Android-KMP، لبدء تطوير تطبيقات Android وiOS.
المكوّن الإضافي Kotlin Multiplatform Android Studio
ننصحك بتثبيت مكوّن Kotlin Multiplatform الإضافي في "استوديو Android" الذي طوّرته JetBrains. تقدّم هذه الإضافة عدة ميزات لتسهيل تجربة التطوير:
- معالج المشاريع الجديدة: يمكنك إنشاء مشروع جديد متعدد المنصات داخل بيئة التطوير المتكاملة.
- عمليات التحقّق قبل النشر: تساعدك عمليات التحقّق قبل النشر في ضبط إعدادات بيئتك.
- عمليات ضبط التشغيل: يمكنك تشغيل التطبيقات وتصحيح أخطائها واختبارها على كل من iOS وAndroid مباشرةً من بيئة التطوير المتكاملة.
- التوافق الأساسي مع Swift في بيئة التطوير المتكاملة: يمكنك الاستفادة من التوافق الأساسي مع Swift في بيئة التطوير المتكاملة، بما في ذلك أدوات تصحيح الأخطاء متعددة اللغات والتنقّل والتوثيق السريع.
مراجع إضافية
لمزيد من المعلومات حول النظام المتكامل الشامل المتوافق مع منصات متعددة وعمليات الضبط الأكثر تقدّمًا، يُرجى الاطّلاع على مستندات Kotlin Multiplatform الرسمية.
يعرض مشروع kotlin-multiplatform-samples بعض وظائف مكتبات Jetpack في مشروع KMP.
الدرس التطبيقي حول بدء استخدام KMP: إرشادات حول كيفية إضافة KMP إلى مشروعك.
نقل بيانات Room إلى Room KMP Codelab: عملية نقل موجّهة من Room المتوافق مع Android فقط إلى KMP
الملاحظات
إذا كانت لديك ملاحظات حول هذه المكتبات، يمكنك مشاركتها من خلال أداة تتبُّع المشاكل.
أفلام مُقترَحة لك
- ملاحظة: يتم عرض نص الرابط عندما تكون JavaScript غير مفعّلة
- نقل التطبيقات الحالية إلى دروس Room KMP التطبيقية
- بدء استخدام دروس KMP التطبيقية
- استخدام المكوّن الإضافي Android-KMP Gradle