Kotlin Multiplatform (KMP), Kotlin kodunun farklı platformlarda paylaşılmasını sağlar. Kotlin Multiplatform, JetBrains tarafından geliştirilmiştir ve Android ile iOS arasında iş mantığını paylaşmak için Google tarafından resmi olarak desteklenir. Mobil platformları hedeflemek için KMP kullanmak kararlı ve üretime hazırdır.
Çok platformlu Jetpack kitaplıkları
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 (*) | 16 Temmuz 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 (*) | 30 Temmuz 2025 | 2.9.2 | - | - | 2.10.0-alpha01 | |
sayfalama (*) | 30 Temmuz 2025 | 3.3.6 | - | - | 3.4.0-alpha02 | |
room | 1 Ağustos 2025 | 2.7.2 | - | 2.8.0-beta01 | - | Belgeler |
savedstate | 30 Temmuz 2025 | 1.3.1 | - | - | 1.4.0-alpha01 | |
sqlite | 1 Ağustos 2025 | 2.5.2 | - | 2.6.0-beta01 | - | Belgeler |
Referans belgeleri
Bu kitaplıkların referans belgelerinde (örneğin,
DataStoreFactory
) API'ler, 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 filtreleyebilirsiniz. Aşağıdaki tabloda her işaretçinin anlamı gösterilmektedir.
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 izleme
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.
Android Studio ile yeni bir KMP modülü oluşturma
Android Studio'da KMP paylaşılan modülü oluşturarak KMP'ye geçiş yapmaya başlayabilirsiniz. Bu modül, Android ve iOS uygulamaları geliştirmeye başlamak için Android-KMP eklentisi de dahil olmak üzere gerekli tüm eklentileri otomatik olarak uygular.
Kotlin Multiplatform Android Studio Eklentisi
JetBrains tarafından geliştirilen Kotlin Multiplatform Android Studio eklentisini yüklemenizi öneririz. Bu eklenti, geliştirme deneyimini kolaylaştırmak için çeşitli özellikler sunar:
- Yeni proje sihirbazı: IDE'de yeni bir çok platformlu proje oluşturun.
- Ön kontroller: Ön kontroller, ortamınızı yapılandırmanıza yardımcı olur.
- Çalıştırma yapılandırmaları: Uygulamaları doğrudan IDE'den hem iOS hem de Android'de çalıştırın, hatalarını ayıklayın ve test edin.
- IDE'de temel Swift desteği: IDE'de temel Swift desteği alın. Bu destek kapsamında, diller arası hata ayıklama araçları, gezinme ve hızlı dokümanlar yer alır.
Ek Kaynaklar
Genel çok platformlu ekosistem ve daha gelişmiş yapılandırmalar hakkında daha fazla bilgi için resmi Kotlin Multiplatform belgelerine bakın.
kotlin-multiplatform-samples: KMP projesinde Jetpack kitaplıklarının bazı işlevlerini gösterir.
KMP'yi kullanmaya başlama Codelab'i: KMP'yi projenize 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.
Sizin için önerilenler
- Not: JavaScript kapalıyken bağlantı metni gösterilir.
- Mevcut uygulamaları Room KMP Codelab'e taşıma
- KMP Codelab'i Kullanmaya Başlama
- Android-KMP Gradle eklentisini kullanma