Kotlin Multiplatform (KMP) מאפשרת לשתף קוד Kotlin בפלטפורמות שונות. Kotlin Multiplatform פותחה על ידי JetBrains ו-Google תומכת בה באופן רשמי לשיתוף לוגיקה עסקית בין Android ו-iOS. השימוש ב-KMP לטירגוט פלטפורמות לנייד הוא יציב ומוכן לייצור.
ספריות Jetpack מולטי-פלטפורמה
הרבה מהספריות של Jetpack כבר עברו מיגרציה כדי לנצל את היתרונות של KMP. ספריות Jetpack הבאות מספקות תמיכה ב-KMP:
| מזהה קבוצה ב-Maven | העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא | מאמרי עזרה |
|---|---|---|---|---|---|---|
| annotation (*) | 22 באוקטובר 2025 | 1.9.1 | - | - | - | |
| collection | 27 באוגוסט 2025 | 1.5.0 | - | - | 1.6.0-alpha01 | |
| datastore | 22 באוקטובר 2025 | 1.1.7 | - | 1.2.0-beta01 | - | מאמרי עזרה |
| lifecycle (*) | 22 באוקטובר 2025 | 2.9.4 | - | 2.10.0-beta01 | - | |
| paging (*) | 10 בספטמבר 2025 | 3.3.6 | - | - | 3.4.0-alpha04 | |
| room | 22 באוקטובר 2025 | 2.8.3 | - | - | - | מאמרי עזרה |
| savedstate | 22 באוקטובר 2025 | 1.3.3 | 1.4.0-rc01 | - | - | |
| sqlite | 24 בספטמבר 2025 | 2.6.1 | - | - | - | מאמרי עזרה |
מאמרי עזרה
במאמרי העזרה של הספריות האלה (לדוגמה, DataStoreFactory) מצוין אם ה-APIs זמינים לקוד משותף, ל-Android ול-Native.
אפשר גם לסנן את ההצהרות לפי פלטפורמה בחלק העליון של כל דף. הטבלה הבאה מציגה את המשמעות של כל סמן.
פלטפורמות נתמכות
הדרישות לגבי איכות ותאימות נשמרות בגרסאות של ספריות Jetpack לפלטפורמות נתמכות רשמית, Android ו-iOS. עם זאת, אנחנו פועלים להרחיב את התמיכה של Jetpack ב-Kotlin Multiplatform לפלטפורמות נוספות, ולכן יכול להיות מקום לשיפור בתמיכה הנוכחית בכלים ובתשתיות.
רמת התמיכה הנוכחית בכל פלטפורמה מסוכמת ברמות הבאות:
רמה 1:
- נבדק באופן מלא ב-CI, כולל בדיקות בצד המארח ובמכשיר
- מעקב אחר תאימות של קוד המקור והקובץ הבינארי בהתאם למדיניות שלנו בנושא ניהול גרסאות סמנטי
רמה 2:
- נבדק באופן חלקי ב-CI; מוגבל לבדיקות בצד המארח
- אין מעקב אחר תאימות של קוד מקור או קובץ בינארי
רמה 3:
- לא נבדק ב-CI
- אין מעקב אחר תאימות של קוד מקור או קובץ בינארי
| פלטפורמה | רמת התמיכה |
|---|---|
| Android | רמה 1 |
| JVM | רמה 1 |
| iOS | רמה 1 |
| macOS | רמה 2 |
| Linux | רמה 2 |
| watchOS | רמה 3 |
| tvOS | רמה 3 |
| Windows | רמה 3 |
| JavaScript | רמה 3 |
| WASM | רמה 3 |
תמיכה בכלי פיתוח
אתם יכולים לפתוח, לערוך ולהריץ פרויקטים של מולטי-פלטפורמה ב-Android Studio. עם זאת, חלק מהתכונות של סביבת הפיתוח המשולבת עדיין לא זמינות בפרויקטים האלה.
יצירת מודול KMP חדש ב-Android Studio
כדי להתחיל את המעבר ל-KMP, צריך ליצור מודול משותף של KMP ב-Android Studio. המודול הזה מוסיף באופן אוטומטי את כל הפלאגינים הדרושים, כולל הפלאגין Android-KMP, כדי להתחיל לפתח אפליקציות ל-Android ול-iOS.
פלאגין Kotlin Multiplatform ל-Android Studio
מומלץ להתקין את הפלאגין של Kotlin Multiplatform ל-Android Studio שפותח על ידי JetBrains. התוסף הזה מציע כמה תכונות שיכולות לשפר את חוויית הפיתוח:
- אשף הפרויקטים החדש: יצירת פרויקט מולטי-פלטפורמה חדש בתוך סביבת הפיתוח המשולבת.
- בדיקות קדם הפעלה: בדיקות קדם הפעלה עוזרות לכם להגדיר את הסביבה.
- הגדרות הפעלה: הפעלה, ניפוי באגים ובדיקה של אפליקציות ב-iOS וב-Android ישירות מתוך סביבת הפיתוח המשולבת.
- תמיכה בסיסית ב-Swift בסביבת הפיתוח המשולבת: תמיכה בסיסית ב-Swift בסביבת הפיתוח המשולבת, כולל כלי ניפוי באגים, ניווט ויצירה מהירה של מאמרי עזרה בשפות שונות.
מקורות מידע נוספים
למידע נוסף על הסביבה העסקית הכוללת של מולטי פלטפורמות ועל הגדרות מתקדמות יותר, אפשר לעיין במאמרי העזרה הרשמיים של Kotlin Multiplatform.
kotlin-multiplatform-samples – בדוגמאות האלה מוצגת חלק מהפונקציונליות של ספריות Jetpack בפרויקט KMP.
Codelab תחילת העבודה עם KMP – הדרכה למשתמשים חדשים על הוספת KMP לפרויקט.
Codelab העברת Room ל-Room KMP – העברה מודרכת של Room ל-Android בלבד ל-KMP.
משוב
אם יש לכם משוב על הספריות האלה, אתם יכולים לשתף אותו באמצעות Issue Tracker.
מומלץ בשבילך
- הערה: טקסט הקישור מוצג כש-JavaScript מושבת
- Codelab העברת אפליקציות קיימות אל Room KMP
- Codelab תחילת העבודה עם KMP
- שימוש בפלאגין Android-KMP Gradle