JetBrains is keeping up the pace of Kotlin development with an update on the progress of the Kotlin Multiplatform Mobile (KMM), a cross-platform SDK for mobile apps that the company is building.
KMM was made available as an alpha release last year, and JetBrains is now working towards a beta version and a roadmap to a production release. It enables developers to build an application targeting both iOS and Android platforms, but use the same core business logic code for both versions.
The KMM plugin for Android Studio enables developers to build, test and debug the iOS part of an application on iOS targets straight from the Android Studio IDE. Since the first release of the plugin, its integration with iOS has become more stable and offers greater configuration options, plus it has been updated to support the latest iOS tooling.
The latest plugin version provides the ability to use Cocoapods integration to handle iOS dependencies in new KMM projects and modules. According to JetBrains, developers just need to provide an additional KMM module description, and the plugin will generate all the required configuration code.
KMM uses Kotlin/JVM and Kotlin/Native to produce the platform artifacts, namely .jar for Android and .framework for iOS, which means that it will benefit from the enhanced memory management that JetBrains is developing for Kotlin/Native.
According to JetBrains, the Kotlin Multiplatform team has also focused on improving the frontend and IDE import stability for multiplatform projects, fixing many issues that would otherwise lead to “red code” in the IDE while working with such multiplatform projects.
The number of KMM libraries continues to grow, and now includes Realm, an open-source local database that has a Kotlin Multiplatform SDK, and Decompose, which provides Kotlin Multiplatform lifecycle-aware business logic components with routing functionality and a pluggable UI.
For full details of all the updates and improvements in the Kotlin Multiplatform Mobile platform, take a look at The Kotlin Blog.