Kotlin Multiplatform (KMP), Kotlin kodunun farklı platformlarda paylaşılmasını sağlar. Kotlin Multiplatform, JetBrains tarafından geliştirilmiştir ve mobil platformları hedeflemek için KMP kullanmak kararlı ve üretime hazırdır.
Çok platformlu Jetpack kitaplıkları
Kotlin Multiplatform, Android ve iOS arasında iş mantığı paylaşımı için Google tarafından resmi olarak desteklenir. Jetpack kitaplıklarımızın çoğu, KMP'den yararlanmak için zaten taşındı.
Aşağıdaki Jetpack kitaplıkları KMP desteği sunar:
Maven Group ID | Son Güncelleme | Kararlı sürüm | Sürüm Adayı | Beta Sürümü | Alfa sürümü | Belgeler |
---|---|---|---|---|---|---|
ek açıklama (*) | 7 Mayıs 2025 | 1.9.1 | - | - | - | |
collection | 12 Mart 2025 | 1.5.0 | - | - | - | |
datastore | 20 Mayıs 2025 | 1.1.7 | - | - | 1.2.0-alpha02 | Belgeler |
lifecycle (*) | 2 Temmuz 2025 | 2.9.1 | - | - | - | |
sayfalama (*) | 2 Temmuz 2025 | 3.3.6 | - | - | 3.4.0-alpha01 | |
room | 18 Haziran 2025 | 2.7.2 | - | - | - | Belgeler |
savedstate | 2 Temmuz 2025 | 1.3.1 | - | - | - | |
sqlite | 18 Haziran 2025 | 2.5.2 | - | - | - | Belgeler |
Referans belgeleri
Bu kitaplıkların referans belgelerinde, API'ler (ör. DataStoreFactory
) ortak kod, Android ve Native için kullanılabilirlik durumlarına göre işaretlenir. Ayrıca, her sayfanın üst kısmında platforma göre bildirimleri de filtreleyebilirsiniz.
Desteklenen platformlar
Resmi olarak desteklenen platformlar olan Android ve iOS için Jetpack kitaplık sürümleri aynı kalite ve uyumluluk koşullarını karşılar. Ancak Jetpack'in Kotlin Multiplatform desteğini diğer platformlara genişletmek için çalışırken araç ve altyapı desteği üzerinde çalışıyor olabiliriz.
Her platform için mevcut destek düzeyi katmanlar halinde özetlenebilir:
1. Katman:
- CI'da tamamen test edilmiştir. Hem ana makine tarafı hem de cihaz üzerinde testler içerir.
- Anlamsal sürüm oluşturma politikalarımıza uygun olarak kaynak ve ikili uyumluluk takibi
2. Katman:
- CI üzerinde kısmen test edildi; ana makine tarafı testleriyle sınırlıdır.
- Kaynak veya ikili uyumluluk izleme yok
3. Katman:
- CI'da test edilmemiş
- Kaynak veya ikili uyumluluk izleme yok
Platform | Destek düzeyi |
---|---|
Android | 1. Katman |
JVM | 1. Katman |
iOS | 1. Katman |
macOS | 2. Katman |
Linux | 2. Katman |
watchOS | 3. Katman |
tvOS | 3. Katman |
Windows | 3. Katman |
JavaScript | 3. Katman |
WASM | 3. Katman |
Araç desteği
Android Studio'da çok platformlu projeleri açabilir, düzenleyebilir ve çalıştırabilirsiniz. Ancak bazı IDE özellikleri bu projelerde henüz kullanılamamaktadır. Yeni bir proje oluşturmak için JetBrains'in Kotlin Multiplatform sihirbazını kullanın. Alternatif olarak Kotlin Multiplatform Android Studio eklentisini de kullanabilirsiniz.
Ayrıca, yeni sürümler için temel senaryoları test ederek Android Gradle Plugin'in Kotlin Multiplatform ile uyumlu olmasını sağlıyoruz.
Ek Kaynaklar
kotlin-multiplatform-samples: KMP projesinde Jetpack kitaplıklarının bazı işlevlerini gösterir.
KMP Codelab'i kullanmaya başlama: Projenize KMP'yi nasıl ekleyeceğiniz konusunda rehberli oryantasyon.
Migrate Room to Room KMP Codelab: Yalnızca Android'e özel Room'u KMP'ye taşıma konusunda rehberlik eder.
Geri bildirim
Bu kitaplıklarla ilgili geri bildiriminiz varsa sorun izleyici aracılığıyla paylaşın.