Visão geral do Kotlin Multiplatform

O Kotlin Multiplatform (KMP) permite compartilhar códigos Kotlin em diferentes plataformas. Ele é desenvolvido pela JetBrains, e o uso para plataformas móveis está estável e pronto para produção (links em inglês).

Bibliotecas multiplataforma do Jetpack

O Kotlin Multiplatform tem suporte oficial do Google para compartilhar lógica de negócios entre Android e iOS. Muitas das nossas bibliotecas do Jetpack já foram migradas para aproveitar o KMP.

As seguintes bibliotecas do Jetpack oferecem suporte ao KMP:

ID de grupo do Maven Atualização mais recente Versão estável Versão candidata a lançamento Versão Beta Versão Alfa Documentação
annotation (*) 7 de maio de 2025 1.9.1 - - -
collection 12 de março de 2025 1.5.0 - - -
datastore 20 de maio de 2025 1.1.7 - - 1.2.0-alpha02 Documentação
lifecycle (*) 2 de julho de 2025 2.9.1 - - -
paging (*) 2 de julho de 2025 3.3.6 - - 3.4.0-alpha01
room 18 de junho de 2025 2.7.2 - - - Documentação
savedstate 2 de julho de 2025 1.3.1 - - -
sqlite 18 de junho de 2025 2.5.2 - - - Documentação

Documentação de referência

Marcadores mostrando a disponibilidade de plataforma das APIs

A documentação de referência dessas bibliotecas marca as APIs (por exemplo, DataStoreFactory) com base na disponibilidade delas para código comum, Android e nativo. Também é possível filtrar as declarações por plataforma na parte de cima de cada página.

Plataformas compatíveis

As versões da biblioteca Jetpack para plataformas oficialmente compatíveis, Android e iOS, mantêm os mesmos requisitos de qualidade e compatibilidade. No entanto, enquanto trabalhamos para expandir a compatibilidade do Jetpack com o Kotlin Multiplatform para outras plataformas, o suporte a ferramentas e infraestrutura pode estar em andamento.

O nível atual de suporte para cada plataforma pode ser resumido em níveis:

Nível 1:

Nível 2:

  • Parcialmente testado na CI; limitado a testes do lado do host
  • Nenhum rastreamento de compatibilidade de origem ou binária

Nível 3:

  • Não testado na CI
  • Nenhum rastreamento de compatibilidade de origem ou binária
Plataforma Nível de suporte
Android Nível 1
JVM Nível 1
iOS Nível 1
macOS Nível 2
Linux Nível 2
watchOS Nível 3
tvOS Nível 3
Windows Nível 3
JavaScript Nível 3
WASM Nível 3

Suporte a ferramentas

Você pode abrir, editar e executar projetos multiplataforma no Android Studio. No entanto, alguns recursos do ambiente de desenvolvimento integrado ainda não estão disponíveis para esses projetos. Para criar um novo projeto, use o assistente do Kotlin Multiplatform da JetBrains ou o plug-in do Kotlin Multiplatform do Android Studio.

Também vamos garantir que o Plug-in do Android para Gradle ofereça suporte ao Kotlin Multiplatform com testes dos cenários principais de lançamentos.

Outros recursos

Feedback

Se você tiver feedback sobre essas bibliotecas, compartilhe no Issue Tracker.