Kotlin Multiplatform (KMP) chính là xu hướng lập trình mobile mới trong năm, giúp bạn viết chung code logic cho Android, iOS, Desktop, Web, chỉ phần UI là khác biệt. Việc này giúp tiết kiệm chi phí, rút ngắn thời gian phát triển app đa nền tảng.
Bài viết này sẽ hướng dẫn bạn chi tiết cách chuyển project Android Kotlin sang Kotlin Multiplatform theo chuẩn mới nhất với Kotlin 2.0 + Compose Multiplatform.
✅ Lợi Ích Khi Chuyển Sang Kotlin Multiplatform
- Code dùng chung cho Android, iOS, Desktop, Web
- Tối ưu chi phí khi viết app đa nền tảng
- Dễ bảo trì, update logic cho nhiều nền tảng cùng lúc
- Chuẩn bị cho xu hướng Compose Multiplatform đang phát triển mạnh từ 2024-2025

Bước 1: Xác Định Mục Tiêu Đa Nền Tảng
Kotlin Multiplatform hỗ trợ:
- ✅ Android
- ✅ iOS (dùng SwiftUI + framework shared)
- ✅ Desktop (Compose Desktop)
- ✅ Web (Compose Web)
- ✅ Backend (Ktor)
Bước 2: Tạo Project Kotlin Multiplatform Chuẩn Hiện Đại
Trong Android Studio (phiên bản Giraffe hoặc mới hơn):
- Chọn New Project ➔ Compose Multiplatform App
- Hoặc tạo project trống rồi cấu hình settings.gradle và build.gradle.kts
Bước 3: Cấu Trúc Project KMP Chuẩn
root
├── androidApp/ # App Android
├── iosApp/ # App iOS (SwiftUI + framework)
├── shared/ # Code dùng chung (logic)
│ ├── src/commonMain
│ ├── src/androidMain
│ ├── src/iosMain
│ ├── src/desktopMain
│ ├── src/webMain
└── build.gradle.kts
Bước 4: Chuyển Business Logic Vào Module shared
Toàn bộ code logic cũ của bạn:
- repository
- usecase
- network (Retrofit, Ktor)
- database (Room, SQLDelight)
➡️ Move sang module shared.
UI (Compose, Activity, Fragment) vẫn để riêng cho từng nền tảng.
Bước 5: Build iOS App Gọi Chung Code Kotlin
- Build module shared sẽ tạo ra .framework cho iOS.
- Import shared.framework vào Xcode.
- Gọi code Kotlin từ Swift/SwiftUI, giống như Kotlin Multiplatform Mobile (KMM).
Bước 6: (Tùy Chọn) Build Thêm Cho Desktop & Web
🎯 Kết Luận
Việc chuyển project Android Kotlin sang Kotlin Multiplatform (KMP) giúp bạn:
- Tái sử dụng code logic cho nhiều nền tảng
- Tiết kiệm chi phí, thời gian
- Chuẩn bị cho xu hướng lập trình mobile đa nền tảng trong năm nay
Nếu bạn đang viết app Android bằng Kotlin, đây là thời điểm tốt nhất để nâng cấp sang Multiplatform!