Kotlin Multiplatform (KMP) umożliwia udostępnianie kodu Kotlin na różnych platformach. Kotlin Multiplatform został opracowany przez JetBrains i jest oficjalnie obsługiwany przez Google w zakresie udostępniania logiki biznesowej między Androidem a iOS. Kierowanie na platformy mobilne za pomocą KMP jest stabilne i gotowe do wdrożenia.
Wieloplatformowe biblioteki Jetpack
Wiele naszych bibliotek Jetpack zostało już przeniesionych, aby korzystać z KMP. Obsługę KMP zapewniają te biblioteki Jetpack:
Identyfikator grupy Maven | Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja Beta | Wersja alfa | Dokumentacja |
---|---|---|---|---|---|---|
adnotacja (*) | 16 lipca 2025 r. | 1.9.1 | - | - | - | |
kolekcji, | 12 marca 2025 r. | 1.5.0 | - | - | - | |
datastore | 20 maja 2025 r. | 1.1.7 | - | - | 1.2.0-alpha02 | Dokumentacja |
lifecycle (*) | 30 lipca 2025 r. | 2.9.2 | - | - | 2.10.0-alpha01 | |
stronicowanie (*) | 30 lipca 2025 r. | 3.3.6 | - | - | 3.4.0-alpha02 | |
pokój | 1 sierpnia 2025 roku | 2.7.2 | - | 2.8.0-beta01 | - | Dokumentacja |
savedstate | 30 lipca 2025 r. | 1.3.1 | - | - | 1.4.0-alpha01 | |
sqlite | 1 sierpnia 2025 roku | 2.5.2 | - | 2.6.0-beta01 | - | Dokumentacja |
Dokumentacja
Dokumentacja referencyjna tych bibliotek (np. DataStoreFactory
) zawiera oznaczenia interfejsów API w zależności od ich dostępności w przypadku wspólnego kodu, Androida i platformy natywnej.
U góry każdej strony możesz też filtrować deklaracje według platformy. W tabeli poniżej znajdziesz opis każdego znacznika.
Obsługiwane platformy
Wydania biblioteki Jetpack na oficjalnie obsługiwane platformy, Androida i iOS, zachowują te same wymagania dotyczące jakości i zgodności. Jednak w miarę rozszerzania obsługi Jetpacka w Kotlin Multiplatform na inne platformy narzędzia i infrastruktura mogą być w trakcie opracowywania.
Obecny poziom obsługi każdej platformy można podsumować w postaci poziomów:
Poziom 1:
- W pełni przetestowane w CI, w tym testy po stronie hosta i na urządzeniu
- śledzenie zgodności kodu źródłowego i binarnej zgodnie z naszymi zasadami dotyczącymi wersji semantycznych,
Poziom 2:
- Częściowo testowane w CI; ograniczone do testów po stronie hosta
- Brak śledzenia zgodności kodu źródłowego lub binarnego
Poziom 3:
- Nietestowane w CI
- Brak śledzenia zgodności kodu źródłowego lub binarnego
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
Projekty wieloplatformowe możesz otwierać, edytować i uruchamiać w Android Studio. Jednak niektóre funkcje IDE nie są jeszcze dostępne w przypadku tych projektów.
Tworzenie nowego modułu KMP w Androidzie Studio
Możesz rozpocząć migrację do KMP, tworząc w Android Studio udostępniony moduł KMP. Ten moduł automatycznie stosuje wszystkie niezbędne wtyczki, w tym wtyczkę Android-KMP, aby umożliwić rozpoczęcie tworzenia aplikacji na Androida i iOS.
Wtyczka Kotlin Multiplatform do Android Studio
Zalecamy zainstalowanie wtyczki Kotlin Multiplatform do Androida Studio opracowanej przez JetBrains. Ta wtyczka oferuje kilka funkcji, które ułatwiają tworzenie aplikacji:
- Kreator nowego projektu: utwórz nowy projekt wieloplatformowy w środowisku IDE.
- Kontrole wstępne: pomagają skonfigurować środowisko.
- Konfiguracje uruchamiania: uruchamiaj, debuguj i testuj aplikacje na iOS i Androida bezpośrednio z IDE.
- Podstawowa obsługa języka Swift w środowisku IDE: korzystaj z podstawowej obsługi języka Swift w środowisku IDE, w tym z narzędzi do debugowania w różnych językach, nawigacji i szybkiej dokumentacji.
Dodatkowe materiały
Więcej informacji o całym ekosystemie wieloplatformowym i bardziej zaawansowanych konfiguracjach znajdziesz w oficjalnej dokumentacji Kotlin Multiplatform.
Projekt kotlin-multiplatform-samples prezentuje niektóre funkcje bibliotek Jetpack w projekcie KMP.
Ćwiczenia z programowania dotyczące KMP – przewodnik wprowadzający, który pokazuje, jak dodać KMP do projektu.
Ćwiczenia z programowania dotyczące migracji biblioteki Room do KMP – przewodnik po migracji biblioteki Room z Androida do KMP.
Opinia
Jeśli masz uwagi dotyczące tych bibliotek, podziel się nimi w narzędziu do śledzenia problemów.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy JavaScript jest wyłączony.
- Ćwiczenia z programowania dotyczące przenoszenia istniejących aplikacji do Room KMP
- Ćwiczenia z programowania dotyczące KMP
- Używanie wtyczki Android-KMP Gradle