JetBrains Composes Cross-Platform para iOS llega a Alpha
Después de agregar soporte para aplicaciones web y de escritorio, JetBrains Cross-Platform Declarative UI Toolkit ahora se ejecuta en iOS en alfa.
Basado en Google Jetpack Compose, actualizado recientemente con mejoras en el rendimiento y las extensiones, Compose Multiplatform se ejecuta de forma nativa en Android y, gracias a Kotlin Multiplatform, también en Windows, Linux, macOS y la web. La adición de iOS extiende Compose Multiplatform a todos los principales sistemas operativos.
El enfoque seguido por Compose Multiplatform es proporcionar la misma API en todas las plataformas compatibles, replicando las API de Jetpack Compose:
Las API multiplataforma de Compose son las mismas que ya se probaron en Jetpack Compose. Esto significa que los desarrolladores que tienen experiencia en escribir interfaces de usuario de Android modernas con Jetpack Compose pueden transferir esas habilidades directamente para escribir una interfaz de usuario compartida con Compose Multiplatform, dirigida a iOS y más allá.
Esto incluye gestión de estado, composición de diseños y animaciones. Para una serie de funciones que dependen estrictamente del sistema operativo, como la carga de recursos, Compose Multiplatform proporciona sus propias abstracciones de nivel superior para maximizar la portabilidad.
En iOS, Compose Multiplatform usa renderizado basado en pantalla, usando el Skiko biblioteca de gráficos. También conocido como Skia por Kotlin, Skiko se basa en EsquíaBiblioteca de gráficos de Google utilizada para Chrome, ChromeOS y Flutter.
Este enfoque significa que las aplicaciones de Compose Multiplatform tienen el mismo aspecto en todas las plataformas compatibles, de forma similar a las aplicaciones de Flutter. Sin embargo, a diferencia de Flutter, Compose Multiplatform proporciona widgets de Material y Material 3 listos para usar, por lo que las aplicaciones de Compose Multiplatform se verán como aplicaciones simples de Android. Si bien Material es el único aspecto de widget compatible actualmente con iOS, JetBrains aún tiene que tomar una decisión final sobre el suministro de un aspecto de widget nativo.
Un aspecto importante de la creación de aplicaciones multiplataforma es la interoperabilidad con el SDK del sistema operativo subyacente. Compose Multiplatform para iOS proporciona una capa de interoperabilidad bidireccional además de UIKit
con dos clases principales, UIKitView
Es ComposeUIViewController
. UIKitView
permite la incorporación de widgets específicos de la plataforma, como mapas, vistas web, reproductores multimedia y transmisiones de cámaras en una interfaz de usuario de Compose. ComposeUIViewController
se puede usar para incrustar pantallas Compose en aplicaciones UIKit y SwiftUI. Esto puede ser útil para convertir gradualmente una aplicación existente en una aplicación Compose.
Para empezar a trabajar con Redacción multiplataforma para iOS, necesitará una máquina que ejecute la última versión de macOS, Xcode, Android Studio y el Complemento móvil multiplataforma de Kotlin. Todo dependencias adicionales se puede administrar a través de CocoaPods.
El mejor lugar para comenzar es una de las plantillas de proyecto proporcionadas por JetBrains. Estos incluyen un Aplicación básica para iOS/Androiduno Visor de imágenesEl aplicación de chatEs Mucho más. También hay varios tutoriales disponibles para guiarlo a través del uso de los elementos de interfaz de usuario más comunes en una aplicación Compose Multiplatform.