Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Kotlin Multiplatform (KMP) consente di condividere il codice Kotlin su
piattaforme diverse. Kotlin Multiplatform è sviluppato da JetBrains ed è
supportato ufficialmente da Google per la condivisione della logica di business
tra Android e iOS. L'utilizzo di KMP per il targeting delle piattaforme mobile è stabile e
pronto per la produzione.
Librerie Jetpack multipiattaforma
Molte delle nostre librerie Jetpack sono già state migrate per sfruttare
KMP. Le seguenti librerie Jetpack forniscono il supporto di KMP:
La documentazione di riferimento per queste librerie (ad esempio,
DataStoreFactory) contrassegna le API in base alla loro disponibilità per codice comune, Android e nativo.
Puoi anche filtrare le dichiarazioni per piattaforma nella parte superiore di ogni pagina. La
tabella seguente mostra il significato di ogni marcatore.
Piattaforme supportate
Le release della libreria Jetpack per le piattaforme supportate ufficialmente, Android e iOS,
mantengono gli stessi requisiti di qualità e compatibilità. Tuttavia, mentre lavoriamo per
estendere il supporto multipiattaforma di Kotlin di Jetpack ad altre piattaforme, il supporto di strumenti
e infrastrutture potrebbe essere in fase di sviluppo.
L'attuale livello di supporto per ogni piattaforma può essere riassunto in livelli:
Livello 1:
Testato completamente in CI, inclusi test lato host e sul dispositivo
Testato parzialmente su CI; limitato ai test lato host
Nessun monitoraggio della compatibilità binaria o dell'origine
Livello 3:
Non testato su CI
Nessun monitoraggio della compatibilità binaria o dell'origine
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 per gli strumenti
Puoi aprire, modificare ed eseguire progetti multipiattaforma in Android Studio. Tuttavia,
alcune funzionalità dell'IDE non sono ancora disponibili per questi progetti.
Creare un nuovo modulo KMP con Android Studio
Puoi iniziare la migrazione a KMP creando un modulo condiviso KMP
in Android Studio. Questo modulo applica automaticamente tutti i plug-in necessari, incluso il plug-in Android-KMP, per iniziare a sviluppare app per Android e iOS.
Plug-in Kotlin Multiplatform per Android Studio
Ti consigliamo di installare il plug-in Kotlin Multiplatform per Android Studio sviluppato da JetBrains. Questo plug-in offre diverse funzionalità per
semplificare l'esperienza di sviluppo:
Procedura guidata Nuovo progetto: crea un nuovo progetto multipiattaforma all'interno dell'IDE.
Controlli preflight: i controlli preflight ti aiutano a configurare l'ambiente.
Configurazioni di esecuzione: esegui, esegui il debug e testa le applicazioni su iOS e
Android direttamente dall'IDE.
Supporto di base di Swift nell'IDE: ottieni il supporto di base di Swift nell'IDE,
inclusi strumenti di debug cross-language, navigazione e documentazione
rapida.
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-08-13 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-08-13 UTC."],[],[],null,["# Kotlin Multiplatform Overview\n\n[Kotlin Multiplatform](https://kotlinlang.org/lp/mobile/) (KMP) enables sharing Kotlin code across\ndifferent platforms. Kotlin Multiplatform is developed by JetBrains and is\n[officially supported](https://android-developers.googleblog.com/2024/05/android-support-for-kotlin-multiplatform-to-share-business-logic-across-mobile-web-server-desktop.html) by Google for sharing business logic\nbetween Android and iOS. Using KMP to target mobile platforms is [stable and\nproduction-ready](https://blog.jetbrains.com/kotlin/2023/11/kotlin-multiplatform-stable/).\n\n\u003cbr /\u003e\n\nMultiplatform Jetpack libraries\n-------------------------------\n\nMany of our Jetpack libraries have already been migrated to take advantage of\nKMP. The following Jetpack libraries provide KMP support:\n\n| Maven Group ID | Latest Update | Stable Release | Release Candidate | Beta Release | Alpha Release | Documentation |\n|----------------------------------------------------------|-----------------|-----------------------------------------------------------------|------------------------------------------------------------|--------------|-----------------------------------------------------------------------------------|--------------------------------------------------|\n| [annotation (\\*)](/jetpack/androidx/releases/annotation) | July 16, 2025 | [1.9.1](/jetpack/androidx/releases/annotation#annotation-1.9.1) | - | - | - |\n| [collection](/jetpack/androidx/releases/collection) | March 12, 2025 | [1.5.0](/jetpack/androidx/releases/collection#1.5.0) | - | - | - |\n| [datastore](/jetpack/androidx/releases/datastore) | May 20, 2025 | [1.1.7](/jetpack/androidx/releases/datastore#1.1.7) | - | - | [1.2.0-alpha02](/jetpack/androidx/releases/datastore#1.2.0-alpha02) | [Documentation](/kotlin/multiplatform/datastore) |\n| [lifecycle (\\*)](/jetpack/androidx/releases/lifecycle) | August 13, 2025 | [2.9.2](/jetpack/androidx/releases/lifecycle#lifecycle-*-2.9.2) | - | - | [2.10.0-alpha02](/jetpack/androidx/releases/lifecycle#lifecycle-*-2.10.0-alpha02) |\n| [paging (\\*)](/jetpack/androidx/releases/paging) | July 30, 2025 | [3.3.6](/jetpack/androidx/releases/paging#paging-*-3.3.6) | - | - | [3.4.0-alpha02](/jetpack/androidx/releases/paging#paging-*-3.4.0-alpha02) |\n| [room](/jetpack/androidx/releases/room) | August 13, 2025 | [2.7.2](/jetpack/androidx/releases/room#2.7.2) | [2.8.0-rc01](/jetpack/androidx/releases/room#2.8.0-rc01) | - | - | [Documentation](/kotlin/multiplatform/room) |\n| [savedstate](/jetpack/androidx/releases/savedstate) | August 13, 2025 | [1.3.1](/jetpack/androidx/releases/savedstate#1.3.1) | - | - | [1.4.0-alpha02](/jetpack/androidx/releases/savedstate#1.4.0-alpha02) |\n| [sqlite](/jetpack/androidx/releases/sqlite) | August 13, 2025 | [2.5.2](/jetpack/androidx/releases/sqlite#2.5.2) | [2.6.0-rc01](/jetpack/androidx/releases/sqlite#2.6.0-rc01) | - | - | [Documentation](/kotlin/multiplatform/sqlite) |\n\n### Reference documentation\n\nThe reference documentation for these libraries (for example,\n[`DataStoreFactory`](/reference/kotlin/androidx/datastore/core/DataStoreFactory)) marks the APIs based on their availability for common\ncode, Android, and Native.\n\nYou can also filter for declarations by platform at the top of each page. The\nfollowing table shows the meaning of each marker.\n\n\u003cbr /\u003e\n\nSupported platforms\n-------------------\n\nJetpack library releases for officially supported platforms, Android and iOS,\nmaintain the same quality and compatibility requirements. However, as we work to\nexpand Jetpack's Kotlin Multiplatform support to other platforms, the tooling\nand infrastructure support may be a work in progress.\n\nThe current level of support for each platform can be summarized in tiers:\n\n**Tier 1**:\n\n- Fully tested in CI; including both host-side and on-device tests\n- Source and binary compatibility tracking in accordance with our [semantic\n versioning policies](/jetpack/androidx/versions)\n\n**Tier 2**:\n\n- Partially tested on CI; limited to host-side tests\n- No source or binary compatibility tracking\n\n**Tier 3**:\n\n- Untested on CI\n- No source or binary compatibility tracking\n\n| Platform | Level of support |\n|------------|------------------|\n| Android | Tier 1 |\n| JVM | Tier 1 |\n| iOS | Tier 1 |\n| macOS | Tier 2 |\n| Linux | Tier 2 |\n| watchOS | Tier 3 |\n| tvOS | Tier 3 |\n| Windows | Tier 3 |\n| JavaScript | Tier 3 |\n| WASM | Tier 3 |\n\n| **Note:** The support level per-platform listed here is for Jetpack **library** releases. Tooling and IDE support in Android Studio is still a work in progress, and not all features may work for KMP projects.\n\nTooling support\n---------------\n\nYou can open, edit, and run multiplatform projects in Android Studio. However,\nsome IDE features aren't yet available for these projects.\n\n### Create a new KMP module with Android Studio\n\nYou can start migrating to KMP by [creating a KMP shared module](/kotlin/multiplatform/migrate)\nwithin Android Studio. This module automatically applies all the necessary\nplugins, including the [Android-KMP plugin](/kotlin/multiplatform/plugin), to start developing\nAndroid and iOS apps.\n\n### Kotlin Multiplatform Android Studio Plugin\n\nWe recommend installing the [Kotlin Multiplatform](https://plugins.jetbrains.com/plugin/14936-kotlin-multiplatform) Android\nStudio Plugin developed by JetBrains. This plugin offers several features to\nease the development experience:\n\n- **New project wizard**: Create a new multiplatform project within the IDE.\n- **Preflight checks**: Preflight checks help you configure your environment.\n- **Run configurations**: Run, debug, and test applications on both iOS and Android directly from the IDE.\n- **Basic Swift support in the IDE**: Get basic Swift support in the IDE, including cross-language debugging tools, navigation, and quick documentation.\n\nAdditional Resources\n--------------------\n\nFor further information about the overall multiplatform ecosystem and more\nadvanced configurations, see the official\n[Kotlin Multiplatform documentation](https://kotlinlang.org/docs/multiplatform-intro.html).\n\n- The [kotlin-multiplatform-samples](https://github.com/android/kotlin-multiplatform-samples) - showcases some of the\n functionality of Jetpack libraries in a KMP project.\n\n- [Get Started with KMP Codelab](/codelabs/kmp-get-started) - guided onboarding how to add KMP to your\n project.\n\n- [Migrate Room to Room KMP Codelab](/codelabs/kmp-migrate-room) - guided migration of Android-only\n Room to KMP.\n\nFeedback\n--------\n\nIf you have feedback on these libraries, share it through the [issue\ntracker](https://issuetracker.google.com/issues/new?component=1337890&template=1803002).\n\nRecommended for you\n-------------------\n\n- Note: link text is displayed when JavaScript is off\n- [Migrate existing apps to Room KMP Codelab](/codelabs/kmp-migrate-room)\n- [Get Started with KMP Codelab](/codelabs/kmp-get-started)\n- [Use the Android-KMP Gradle plugin](/kotlin/multiplatform/plugin)"]]