迅速な UI 開発
ユーザーインターフェースを一度作成すれば、Android、iOS、ウェブ、およびデスクトップのすべてのプラットフォームで使用できます。異なる UI を並行して管理する必要がなくなるため、より迅速にアプリをユーザーの手元に届けることができます。
Android UI およびその他のプラットフォームのアーキテクチャスキル
慣れ親しんだ Jetpack Compose API を使用して複数のプラットフォームでユーザーインターフェースを共有するアプリをビルドできます。すでに慣れ親しんでいるアーキテクチャコンポーネントを活用できます。Compose Multiplatform では、ビューモデル、ナビゲーション、ライフサイクルをすべて利用可能です。
優れたエコシステム
シェアを伸ばしている Google 公式のマルチプラットフォームである Jetpack ライブラリを活用できます。幅広い本番対応の Kotlin ライブラリとフレームワークを使用できるため、親しみやすい開発者コミュニティの支援を受けながらアプリのビルドを高速化できます。
あらゆるプラットフォームと簡単に統合
Kotlin Multiplatform をベースに制作されているため、あらゆるプラットフォームの機能に簡単にアクセスできます。ネイティブのビューを直接的に統合し、SwiftUI と UIKit との相互運用性を備えているため、ネイティブ API とプラットフォーム固有の UI 機能を最大限に活用できます。Kotlin Multiplatform を使用すると、ネイティブマップウィジェット、カメラフィード、動画プレーヤーなどを簡単にアプリへ追加できます。
コンポーネントレベルでの再利用
すべてのターゲットプラットフォームで使用できる、カスタマイズ可能なウィジェットを使って UI を作成できます。既製のテーマを使用してすぐに開始することも、独自のビジュアルスタイルをピクセル単位まで細かく作成することも可能です。
段階的な導入
Compose Multiplatform は既存のアプリケーションにぴったり適合します。Compose Multiplatform を使用すると、単独の画面でも UI 全体でもさまざまなプラットフォーム間で共有できます。
Button(
onClick = {
logger.info("Pressed!")
}
) {
Text("Hello $platform")
}
@Serializable
data class Friend(val name: String)
@Composable
fun FriendCard(name: String) {
var myFriend by remember {
mutableStateOf<Friend?>(null)
}
LaunchedEffect(name) {
val friend = ktorClient
.get("$host/$name.json")
.body<Friend>()
myFriend = friend
}
// ...
}