Configura il tuo ambiente (Kotlin Multiplatform)
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. Prima di iniziare a creare app con KMP, devi configurare il tuo ambiente come descritto in questo documento. Puoi anche consultare la documentazione ufficiale di JetBrains.
Installa o aggiorna gli strumenti richiesti
- Installa o esegui l'aggiornamento alla versione stabile più recente di Android Studio.
- Aggiorna il plug-in Kotlin incluso in Android Studio alla versione più recente per evitare problemi di compatibilità.
- (Facoltativo) Per lo sviluppo per iOS, installa Xcode per creare l'UI e aggiungi il codice Swift o Objective-C in base alle esigenze.
Creare un progetto Kotlin Multiplatform
Puoi utilizzare la procedura guidata Kotlin Multiplatform di JetBrains per creare un nuovo progetto KMP. Assicurati di scegliere l'opzione Non condividere UI per mantenere l'interfaccia utente nativa.
Struttura del progetto
I progetti KMP seguono una struttura simile a quella dei progetti Android.
Un progetto KMP contiene moduli specifici della piattaforma e un modulo condiviso.
Aggiungi il codice specifico della piattaforma al modulo pertinente. Ad esempio, aggiungi l'interfaccia utente della tua app Android nel modulo androidApp e l'interfaccia utente della tua app iOS in iosApp.
Qualsiasi codice che vuoi condividere tra le piattaforme va nel modulo shared.
Il modulo condiviso utilizza Gradle come sistema di compilazione, come il resto del progetto. Puoi dichiarare dipendenze comuni e specifiche della piattaforma utilizzando
i sourceset. Ad esempio, se la tua app utilizza Ktor per la rete, devi aggiungere una dipendenza OkHttp per Android e una dipendenza Darwin per iOS. Tieni presente che alcune librerie richiedono solo dipendenze comuni e non richiedono dipendenze specifiche della piattaforma.
sourceSets {
commonMain.dependencies {
//put your multiplatform dependencies here
//...
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.content.negotiation)
implementation(libs.ktor.serialization.kotlinx.json)
//...
}
androidMain.dependencies {
implementation(libs.ktor.client.okhttp)
}
iosMain.dependencies {
implementation(libs.ktor.client.darwin)
}
}
Quando aggiungi una nuova libreria al modulo condiviso della tua app, assicurati di verificare le dipendenze richieste per ogni piattaforma.
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-07-27 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-07-27 UTC."],[],[],null,["# Setup your environment (Kotlin Multiplatform)\n\n[Kotlin Multiplatform](https://kotlinlang.org/lp/mobile/) (KMP) enables sharing Kotlin code across\ndifferent platforms. Before you start building apps with KMP, you'll need to\nset up your environment as described in this document. You can also refer to\nJetBrain's [official documentation](https://www.jetbrains.com/help/kotlin-multiplatform-dev/multiplatform-setup.html).\n\nInstall or update required tools\n--------------------------------\n\n- Install or update to the latest stable version of [Android Studio](/studio).\n- Update the [Kotlin plugin](https://kotlinlang.org/docs/releases.html#update-to-a-new-release) that is bundled with Android Studio to the latest version to avoid compatibility issues.\n- (Optional) For iOS development, install [Xcode](https://apps.apple.com/us/app/xcode/id497799835) to build the UI and add Swift or Objective-C code as needed.\n\nCreate a Kotlin Multiplatform project\n-------------------------------------\n\nYou can use the [Kotlin Multiplatform wizard](https://kmp.jetbrains.com/) from JetBrains to\ncreate a new KMP project. Make sure to choose the **Do not\nshare UI** option to keep the UI native.\n\n### Project structure\n\nKMP projects follow a project structure similar to Android projects.\n\nA KMP project contains platform-specific modules along with a shared module.\nAdd your platform-specific code to the relevant module. For example, add your\nAndroid app UI in the **androidApp** module and your iOS app UI in **iosApp** .\nAny code you want to share between platforms goes in the **shared** module.\n\nThe shared module uses Gradle as the build system just like the rest of the\nproject. You can declare common and platform-specific dependencies using\nsourcesets. For example, if your app uses Ktor for networking, you need to add\nan OkHttp dependency for Android and a darwin dependency for iOS. Note that some\nlibraries require only common dependencies and don't need platform-specific\ndependencies. \n\n sourceSets {\n commonMain.dependencies {\n //put your multiplatform dependencies here\n //...\n implementation(libs.ktor.client.core)\n implementation(libs.ktor.client.content.negotiation)\n implementation(libs.ktor.serialization.kotlinx.json)\n //...\n }\n androidMain.dependencies {\n implementation(libs.ktor.client.okhttp)\n }\n iosMain.dependencies {\n implementation(libs.ktor.client.darwin)\n }\n }\n\nWhen you add a new library to your app's shared module, make sure to check for\nthe required dependencies for each platform."]]