Cómo configurar tu entorno (multiplataforma de Kotlin)
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Kotlin multiplataforma (KMP) permite compartir el código Kotlin en diferentes plataformas. Antes de comenzar a compilar apps con KMP, deberás configurar tu entorno como se describe en este documento. También puedes consultar la documentación oficial de JetBrains.
Instala o actualiza las herramientas necesarias
- Instala o actualiza a la versión estable más reciente de Android Studio.
- Actualiza el complemento de Kotlin que se incluye con Android Studio a la versión más reciente para evitar problemas de compatibilidad.
- (Opcional) Para el desarrollo de iOS, instala Xcode para compilar la IU y agregar código Swift o Objective-C según sea necesario.
Crea un proyecto multiplataforma de Kotlin
Puedes usar el asistente multiplataforma de Kotlin de JetBrains para crear un proyecto de KMP nuevo. Asegúrate de elegir la opción Do not share UI para mantener la IU nativa.
Estructura del proyecto
Los proyectos de KMP siguen una estructura similar a la de los proyectos de Android.
Un proyecto KMP contiene módulos específicos de la plataforma junto con un módulo compartido.
Agrega tu código específico de la plataforma al módulo relevante. Por ejemplo, agrega la IU de tu app para Android en el módulo androidApp y la IU de tu app para iOS en iosApp.
Cualquier código que quieras compartir entre plataformas se coloca en el módulo compartido.
El módulo compartido usa Gradle como el sistema de compilación, al igual que el resto del proyecto. Puedes declarar dependencias comunes y específicas de la plataforma con conjuntos de orígenes. Por ejemplo, si tu app usa Ktor para la creación de redes, debes agregar una dependencia de OkHttp para Android y una dependencia de Darwin para iOS. Ten en cuenta que algunas bibliotecas solo requieren dependencias comunes y no necesitan dependencias específicas de la plataforma.
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)
}
}
Cuando agregues una biblioteca nueva al módulo compartido de tu app, asegúrate de verificar las dependencias requeridas para cada plataforma.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 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."]]