Configurar o ambiente (Kotlin Multiplatform)
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O Kotlin Multiplatform (KMP) permite compartilhar códigos Kotlin em
diferentes plataformas. Antes de começar a criar apps com o KMP, você precisa
configurar o ambiente conforme descrito neste documento. Você também pode consultar a
documentação oficial do JetBrain.
Instalar ou atualizar as ferramentas necessárias
- Instale ou atualize para a versão estável mais recente do Android Studio.
- Atualize o plug-in do Kotlin que é fornecido com o Android Studio
para a versão mais recente para evitar problemas de compatibilidade.
- (Opcional) Para desenvolvimento iOS, instale o Xcode para criar a
interface e adicionar o código Swift ou Objective-C conforme necessário.
Criar um projeto Kotlin Multiplatform
Você pode usar o assistente Kotlin Multiplatform (link em inglês) da JetBrains para
criar um novo projeto KMP. Escolha a opção Do not
share UI para manter a interface nativa.
Estrutura do projeto
Os projetos do KMP seguem uma estrutura semelhante aos projetos do Android.
Um projeto KMP contém módulos específicos da plataforma e um módulo compartilhado.
Adicione o código específico da plataforma ao módulo relevante. Por exemplo, adicione a
interface do app Android no módulo androidApp e a interface do app iOS em iosApp.
Qualquer código que você queira compartilhar entre plataformas vai para o módulo shared.
O módulo compartilhado usa o Gradle como o sistema de build, assim como o restante do
projeto. É possível declarar dependências comuns e específicas da plataforma usando
sourcesets. Por exemplo, se o app usa o Ktor para rede, é necessário adicionar
uma dependência do OkHttp para Android e uma dependência do Darwin para iOS. Algumas
bibliotecas exigem apenas dependências comuns e não precisam de dependências específicas
da 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)
}
}
Ao adicionar uma nova biblioteca ao módulo compartilhado do app, verifique
as dependências necessárias para cada plataforma.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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."]]