流行的开发工具的创造者JetBrains宣布了其iOS版Compose Multiplatform的alpha版本,扩大了对建立在GoogleJetpack Compose 上的多平台声明式UI工具包的支持。Compose Multiplatform已经提供了与安卓、Windows、Linux、macOS和网络的兼容性,现在又拥抱了iOS以覆盖所有主要的操作系统。
通过在所有支持的平台上提供相同的API,Compose Multiplatform通过复制Jetpack Compose API简化了应用开发。拥有创建现代安卓用户界面的Jetpack Compose 经验的开发者现在可以运用这些技能,通过Compose Multiplatform建立一个共享的用户界面,目标是iOS和其他系统。
Compose Multiplatform中包括了状态管理、布局组合和动画。该工具包还容纳了依赖操作系统的功能,如资源加载,并使用更高级别的抽象来最大化可移植性。利用Skiko图形库(称为Skia for Kotlin),Compose Multiplatform在iOS上利用了基于画布的渲染。Skiko基于Skia,谷歌在其Chrome、ChromeOS和Flutter产品中也采用了Skia。
与Flutter类似,这种方法在所有支持的平台上为Compose Multiplatform应用程序提供了一致的外观和感觉。与Flutter不同的是,该工具包默认包括Material和Material 3小部件,从而使应用程序类似于标准的Android设计。虽然Material是目前iOS上唯一支持的widget外观和感觉,但JetBrains还没有确认未来是否会实现本地widget外观和感觉。
针对跨平台应用开发的重要方面--与操作系统SDK的互操作性--iOS版Compose Multiplatform在UIKit之上提供了一个双向的互操作层。这包括两个主要的类:UIKitView和ComposeUIViewController。使用UIKitView,开发者可以在Compose UI中嵌入特定平台的小工具,如地图、网络视图、媒体播放器或相机馈送。另一方面,ComposeUIViewController可以被用来在UIKit和SwiftUI 应用程序中插入Compose屏幕,帮助将现有的应用程序逐步转换为Compose应用程序。
随着no-code 和low-code 开发环境的不断扩大,像 Compose Multiplatform 这样的工具,以及像AppMaster 这样的平台,正在使全球的开发者更容易获得和有效地开发应用程序。点击这里查看2022年no-code 和low-code 应用程序开发的综合指南。