Descripción general de Kotlin multiplataforma

Kotlin multiplataforma (KMP) permite compartir el código Kotlin en diferentes plataformas. Fue desarrollado por JetBrains y su uso en plataformas móviles es estable y está listo para la producción.

Bibliotecas de Jetpack multiplataforma

Google es compatible oficialmente con Kotlin multiplataforma para compartir la lógica empresarial entre iOS y Android. Muchas de nuestras bibliotecas de Jetpack ya se migraron para aprovechar KMP.

Las siguientes bibliotecas de Jetpack proporcionan compatibilidad con KMP:

ID de grupo de Maven Actualización más reciente Versión estable Versión potencial Versión beta Versión alfa Documentación
annotation (*) 30 de octubre de 2024 1.9.1 - - -
collection 13 de noviembre de 2024 1.4.5 - - 1.5.0-alpha06
datastore 1 de mayo de 2024 1.1.1 - - - Documentación
lifecycle (*) 13 de noviembre de 2024 2.8.7 - - 2.9.0-alpha07
paging (*) 13 de noviembre de 2024 3.3.4 - - -
room 30 de octubre de 2024 2.6.1 - - 2.7.0-alpha11 Documentación
sqlite 30 de octubre de 2024 2.4.0 - - 2.5.0-alpha11 Documentación

Marcadores que muestran la disponibilidad de plataformas de APIs

La documentación de referencia de estas bibliotecas marca las APIs según su disponibilidad para código común, Android y nativo. También puedes filtrar las declaraciones por plataforma en la parte superior de cada página.

El repositorio de GitHub kotlin-multiplatform-samples muestra algunas de las funciones de estas bibliotecas.

Si tienes comentarios sobre estas bibliotecas, compártelos a través del seguimiento de errores.

Plataformas compatibles

Las versiones de la biblioteca de Jetpack para plataformas compatibles oficialmente, Android y iOS, mantienen los mismos requisitos de calidad y compatibilidad. Sin embargo, a medida que trabajamos para expandir la compatibilidad de Kotlin multiplataforma de Jetpack a otras plataformas, es posible que la compatibilidad con las herramientas y la infraestructura esté en curso.

El nivel de asistencia actual de cada plataforma se puede resumir en niveles:

Nivel 1:

Nivel 2:

  • Se probó parcialmente en CI; se limita a las pruebas del host
  • Sin seguimiento de compatibilidad de fuentes ni objetos binarios

Nivel 3:

  • No se probó en CI
  • Sin seguimiento de compatibilidad de fuentes ni objetos binarios
Plataforma Nivel de asistencia
Android Nivel 1
JVM Nivel 1
iOS Nivel 1
macOS Nivel 2
watchOS Nivel 3
tvOS Nivel 3
Linux Nivel 2
Windows Nivel 3
WASM Nivel 3

Compatibilidad con herramientas

Puedes abrir, editar y ejecutar proyectos multiplataforma en Android Studio. Sin embargo, algunas funciones del IDE aún no están disponibles para estos proyectos. Para crear un proyecto nuevo, usa el asistente de Kotlin multiplataforma de JetBrains.

También nos aseguramos de que el complemento de Android para Gradle sea compatible con Kotlin multiplataforma mediante pruebas de situaciones principales en las versiones nuevas.