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.

Bibliotecas multiplataforma do Jetpack

O Kotlin Multiplatform tem suporte oficial do Google para compartilhar a 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 (*) 30 de outubro de 2024 1.9.1 - - -
collection 13 de novembro de 2024 1.4.5 - - 1.5.0-alpha06
datastore 1º de maio de 2024 1.1.1 - - - Documentação
lifecycle (*) 13 de novembro de 2024 2.8.7 - - 2.9.0-alpha07
paging (*) 13 de novembro de 2024 3.3.4 - - -
room 30 de outubro de 2024 2.6.1 - - 2.7.0-alpha11 Documentação
sqlite 30 de outubro de 2024 2.4.0 - - 2.5.0-alpha11 Documentação

Marcadores mostrando a disponibilidade de plataforma das APIs

A documentação de referência dessas bibliotecas marca as APIs 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.

O repositório do GitHub kotlin-multiplatform-samples mostra algumas das funcionalidades dessas bibliotecas.

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

Plataformas compatíveis

As versões da biblioteca Jetpack para plataformas com suporte oficial, Android e iOS, mantêm os mesmos requisitos de qualidade e compatibilidade. No entanto, à medida que trabalhamos para ampliar o suporte do Jetpack para Kotlin Multiplatform a 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 em CI; limitado a testes do lado do host
  • Nenhum acompanhamento de compatibilidade com a origem ou binário

Nível 3:

  • Não testado na CI
  • Nenhum acompanhamento de compatibilidade com a origem ou binário
Plataforma Nível de suporte
Android Nível 1
JVM Nível 1
iOS Nível 1
macOS Nível 2
watchOS Nível 3
tvOS Nível 3
Linux Nível 2
Windows 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.

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.