Kotlin Multiplatform (KMP) umożliwia udostępnianie kodu Kotlin na różnych platformach. Kotlin Multiplatform został opracowany przez JetBrains, a użycie KMP do kierowania na platformy mobilne jest stabilne i gotowe do wdrożenia.
Biblioteki Jetpacka na wiele platform
Kotlin Multiplatform jest oficjalnie obsługiwany przez Google w celu udostępniania logiki biznesowej między Androidem a iOS. Wiele naszych bibliotek Jetpacka zostało już przeniesionych, aby korzystać z KPM.
Biblioteki Jetpacka obsługujące KMP:
Identyfikator grupy Maven | Ostatnia aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja Beta | Wersja alfa | Dokumentacja |
---|---|---|---|---|---|---|
adnotacja (*) | 7 maja 2025 r. | 1.9.1 | - | - | - | |
collection | 12 marca 2025 r. | 1.5.0 | - | - | - | |
datastore | 20 maja 2025 r. | 1.1.7 | - | - | 1.2.0-alpha02 | Dokumentacja |
cyklu życia (*), | 4 czerwca 2025 r. | 2.9.1 | - | - | - | |
przewijanie (*) | 12 lutego 2025 r. | 3.3.6 | - | - | - | |
pokój | 23 kwietnia 2025 r. | 2.7.1 | - | - | - | Dokumentacja |
savedstate | 7 maja 2025 r. | 1.3.0 | - | - | - | |
sqlite | 7 maja 2025 r. | 2.5.1 | - | - | - | Dokumentacja |
Dokumentacja
Dokumentacja tych bibliotek oznacza interfejsy API (np. DataStoreFactory
) na podstawie ich dostępności w przypadku kodu wspólnego, Androida i wersji natywnej. U góry każdej strony możesz też filtrować deklaracje według platformy.
Obsługiwane platformy
Wersje biblioteki Jetpack na oficjalnie obsługiwane platformy (Android i iOS) zachowują te same wymagania dotyczące jakości i zgodności. Pracujemy jednak nad rozszerzeniem obsługi Kotlina Multiplatform w Jetpacku na inne platformy, więc narzędzia i infrastruktura mogą być jeszcze w trakcie tworzenia.
Obecny poziom obsługi każdej platformy można podsumować w ten sposób:
Poziom 1:
- w pełni przetestowane w ramach CI, w tym testy po stronie hosta i na urządzeniu;
- śledzenie zgodności kodu źródłowego i binarnego zgodnie z naszymi zasadami dotyczącymi semantycznej wersji oprogramowania.
Pracownik obsługi klienta poziomu 2:
- częściowo testowane w CI; ograniczone do testów po stronie hosta.
- Brak śledzenia zgodności z źródłem lub binarnym kodem źródłowym
poziom 3:
- Nietestowane w CI
- Brak śledzenia zgodności z źródłem lub binarnym kodem źródłowym
Platforma | Poziom pomocy |
---|---|
Android | Poziom 1 |
JVM | Poziom 1 |
iOS | Poziom 1 |
macOS | Poziom 2 |
Linux | Poziom 2 |
watchOS | Poziom 3 |
tvOS | Poziom 3 |
Windows | Poziom 3 |
JavaScript | Poziom 3 |
WASM | Poziom 3 |
Pomoc dotycząca narzędzi
W Android Studio możesz otwierać, edytować i uruchamiać projekty wieloplatformowe. Jednak niektóre funkcje IDE nie są jeszcze dostępne w przypadku tych projektów. Aby utworzyć nowy projekt, użyj kreatora Kotlin Multiplatform z JetBrains. Możesz też użyć wtyczki Kotlin Multiplatform do Android Studio.
Sprawdzamy też, czy wtyczka Gradle na Androida jest zgodna z Kotlin Multiplatform, testując główne scenariusze nowych wersji.
Dodatkowe materiały
kotlin-multiplatform-samples – zawiera przykłady niektórych funkcji bibliotek Jetpacka w projekcie KMP.
Pierwsze kroki z Kryptografia i szyfrowanie Codelab – przewodnik po dodawaniu KMP do projektu.
Migrate Room to Room KMP Codelab – ćwiczenia z programowania dotyczące migracji z Room na Room KMP.
Opinia
Jeśli chcesz podzielić się opinią na temat tych bibliotek, użyj narzędzia do śledzenia problemów.