Kotlin Multiplatform (KMP) consente di condividere il codice Kotlin su piattaforme diverse. Kotlin Multiplatform è sviluppato da JetBrains e l'utilizzo di KMP per le piattaforme mobile di destinazione è stabile e pronto per la produzione.
Librerie Jetpack multipiattaforma
Kotlin Multiplatform è supportato ufficialmente da Google per la condivisione della logica di business tra Android e iOS. Per molte delle nostre librerie Jetpack è già stata eseguita la migrazione per sfruttare KMP.
Le seguenti librerie Jetpack forniscono il supporto KMP:
ID gruppo Maven | Ultimo aggiornamento | Release stabile | Candidato per la release | Versione beta | Versione alpha | Documentazione |
---|---|---|---|---|---|---|
annotazione (*) | 7 maggio 2025 | 1.9.1 | - | - | - | |
raccolta | 12 marzo 2025 | 1.5.0 | - | - | - | |
datastore | 20 maggio 2025 | 1.1.7 | - | - | 1.2.0-alpha02 | Documentazione |
lifecycle (*) | 23 maggio 2025 | 2.9.0 | - | - | - | |
paginazione (*) | 12 febbraio 2025 | 3.3.6 | - | - | - | |
room | 23 aprile 2025 | 2.7.1 | - | - | - | Documentazione |
savedstate | 7 maggio 2025 | 1.3.0 | - | - | - | |
sqlite | 7 maggio 2025 | 2.5.1 | - | - | - | Documentazione |
Documentazione di riferimento
La documentazione di riferimento di queste librerie contrassegna le API (ad esempio
DataStoreFactory
) in base alla loro disponibilità per il codice comune, Android e nativo. Puoi anche filtrare le dichiarazioni per piattaforma nella parte superiore di ogni pagina.
Piattaforme supportate
Le release delle librerie Jetpack per le piattaforme supportate ufficialmente, Android e iOS, mantengono gli stessi requisiti di qualità e compatibilità. Tuttavia, mentre ci adoperiamo per estendere il supporto di Kotlin Multiplatform di Jetpack ad altre piattaforme, il supporto degli strumenti e dell'infrastruttura potrebbe essere in fase di elaborazione.
Il livello attuale di assistenza per ogni piattaforma può essere riassunto in livelli:
Livello 1:
- Testato completamente in CI, inclusi i test lato host e sul dispositivo
- Monitoraggio della compatibilità del codice sorgente e del codice binario in conformità con le nostre norme relative al controllo delle versioni semantiche
Livello 2:
- Testato parzialmente in CI; limitato ai test lato host
- Nessun monitoraggio della compatibilità con il codice sorgente o i binari
Livello 3:
- Non testato su CI
- Nessun monitoraggio della compatibilità con il codice sorgente o i binari
Piattaforma | Livello di assistenza |
---|---|
Android | Livello 1 |
JVM | Livello 1 |
iOS | Livello 1 |
macOS | Livello 2 |
Linux | Livello 2 |
watchOS | Livello 3 |
tvOS | Livello 3 |
Windows | Livello 3 |
JavaScript | Livello 3 |
WASM | Livello 3 |
Supporto degli strumenti
Puoi aprire, modificare ed eseguire progetti multipiattaforma in Android Studio. Tuttavia, alcune funzionalità dell'IDE non sono ancora disponibili per questi progetti. Per creare un nuovo progetto, utilizza la procedura guidata Kotlin Multiplatform di JetBrains oppure il plug-in Android Studio Kotlin Multiplatform.
Inoltre, ci assicuriamo che il plug-in Gradle per Android sia compatibile con Kotlin Multiplatform testando gli scenari di base per le nuove release.
Risorse aggiuntive
kotlin-multiplatform-samples: mostra alcune delle funzionalità delle librerie Jetpack in un progetto KMP.
Introduzione al codelab KMP: onboarding guidato su come aggiungere KMP al progetto.
Codelab Migrazione da Room a Room KMP: migrazione guidata di Room solo per Android a KMP.
Feedback
Se hai feedback su queste librerie, condividili tramite il tracker dei problemi.