Viết một cơ sở mã duy nhất chạy trên nhiều nền tảng bằng Kotlin Multiplatform.

Google chính thức hỗ trợ Kotlin Multiplatform (KMP) để chia sẻ logic nghiệp vụ giữa Android và iOS. Kotlin Multiplatform ổn định và sẵn sàng cho phiên bản chính thức. Với Compose Multiplatform (CMP) của JetBrains, nhà phát triển cũng có thể chia sẻ giao diện người dùng trên nhiều nền tảng.

Lộ trình
Bắt đầu hành trình phát triển đa nền tảng ngay hôm nay. Lộ trình này sẽ hướng dẫn bạn tìm hiểu những kiến thức cơ bản về Kotlin Multiplatform, từ việc thiết lập dự án, chia sẻ mã và sử dụng các API dành riêng cho nền tảng, cho đến việc di chuyển Cơ sở dữ liệu Room sang Kotlin Multiplatform.
Trình bổ trợ Android Studio
Bạn nên cài đặt Trình bổ trợ Kotlin Multiplatform Android Studio do JetBrains phát triển để cải thiện trải nghiệm phát triển trong Android Studio.
  • Trình hướng dẫn dự án mới: Tạo một dự án đa nền tảng mới trong IDE.
  • Kiểm tra trước khi triển khai: Quy trình kiểm tra trước khi triển khai giúp bạn định cấu hình môi trường.
  • Cấu hình chạy: Chạy, gỡ lỗi và kiểm thử các ứng dụng trên cả iOS và Android ngay từ IDE.
  • Hỗ trợ cơ bản cho Swift trong IDE: Nhận được sự hỗ trợ cơ bản cho Swift trong IDE, bao gồm cả các công cụ gỡ lỗi đa ngôn ngữ, chế độ điều hướng và tài liệu nhanh.

Lợi ích của Kotlin Multiplatform

Với Kotlin Multiplatform, bạn có thể chọn nội dung cần chia sẻ trên các nền tảng, từ logic nghiệp vụ cốt lõi cho đến toàn bộ ứng dụng. Sau đây là một số lợi ích chính của tính năng này:
Bạn không cần phải sao chép logic nghiệp vụ phức tạp trên mỗi nền tảng.
Với Kotlin Multiplatform, bạn không cần viết lại toàn bộ ứng dụng để bắt đầu chia sẻ mã giữa các nền tảng.
Kotlin Multiplatform biên dịch theo cách gốc mà nền tảng mục tiêu chạy mã, mang lại hiệu suất tương đương với các cách triển khai gốc.

Kotlin Multiplatform và các thư viện Jetpack

Nhiều thư viện Jetpack của chúng tôi đã được di chuyển để sẵn sàng cho KMP. Các thư viện Jetpack sau đây hỗ trợ KMP:

Biểu trưng của Android Do Android xây dựng Biểu trưng của JetBrains Do JetBrains xây dựng Không được hỗ trợ

Thư viện Bản phát hành mới nhất Android iOS JVM Web
annotation Ngày 22 tháng 10 năm 2025
collection Ngày 27 tháng 8 năm 2025
compose Ngày 22 tháng 10 năm 2025
datastore

Tài liệu
Ngày 22 tháng 10 năm 2025
lifecycle

Tài liệu
Ngày 22 tháng 10 năm 2025
viewModel

Tài liệu
Ngày 22 tháng 10 năm 2025
viewModel-compose

Tài liệu
Ngày 22 tháng 10 năm 2025
paging Ngày 10 tháng 9 năm 2025
room

Tài liệu
Ngày 22 tháng 10 năm 2025
savedstate Ngày 22 tháng 10 năm 2025
sqlite

Tài liệu
Ngày 24 tháng 9 năm 2025

Nếu bạn muốn gửi ý kiến phản hồi về các thư viện này, hãy chia sẻ thông qua công cụ theo dõi lỗi.

Hỗ trợ về công cụ

Bạn có thể mở, chỉnh sửa và chạy các dự án đa nền tảng trên Android Studio.
Bạn có thể bắt đầu di chuyển sang KMP bằng cách tạo một mô-đun KMP dùng chung trong Android Studio. Mô-đun này tự động áp dụng tất cả các trình bổ trợ cần thiết, bao gồm cả trình bổ trợ Android-KMP, để bắt đầu phát triển các ứng dụng Android và iOS.
Tính năng Chỉnh sửa trực tiếp hoạt động khi bạn tạo trên Thiết bị Android và chỉnh sửa mọi mã trong dự án, không chỉ trong androidMain.
Bản xem trước cho Jetpack Compose cũng có sẵn cho Compose Multiplatform của JetBrains từ nhóm tài nguyên commonMain.

Ứng dụng được xây dựng bằng Kotlin Multiplatform

Nhiều ứng dụng đã sử dụng thành công Kotlin Multiplatform.
Blinkit
Cash App
Duolingo
Tạp chí Forbes
Google Docs
JioHotstar
Đá
Swiggy
Ultrahuman
Wrike
Tiếng Zomato

Nền tảng được hỗ trợ

Các bản phát hành thư viện Jetpack cho các nền tảng được hỗ trợ chính thức (Android và iOS) vẫn duy trì các yêu cầu về chất lượng và khả năng tương thích. Tuy nhiên, trong quá trình mở rộng khả năng hỗ trợ Kotlin Multiplatform của Jetpack sang các nền tảng khác, có thể chúng tôi vẫn đang trong quá trình phát triển công cụ và cơ sở hạ tầng hỗ trợ.
Mã được kiểm thử đầy đủ trong CI; bao gồm cả kiểm thử phía máy chủ lưu trữ và kiểm thử trên thiết bị. Chúng tôi đang theo dõi khả năng tương thích nguồn và nhị phân theo chính sách tạo phiên bản ngữ nghĩa của chúng tôi.
  • Android
  • JVM
  • iOS
Mã được kiểm thử một phần trên CI; chỉ giới hạn ở các kiểm thử phía máy chủ. Chúng tôi không theo dõi khả năng tương thích của nguồn hoặc tệp nhị phân.
  • macOS
  • Linux
Mã chưa được kiểm thử trên CI. Không theo dõi khả năng tương thích nhị phân hoặc nguồn.
  • watchOS
  • tvOS
  • Windows
  • JavaScript
  • WASM

Tài nguyên khác

Để biết thêm thông tin về hệ sinh thái đa nền tảng nói chung và các cấu hình nâng cao hơn, hãy xem tài liệu chính thức về Kotlin Multiplatform.
Một tập hợp các mẫu Kotlin Multiplatform minh hoạ cách sử dụng các thư viện Jetpack cho Android và iOS.
Hướng dẫn bắt đầu về cách thêm KMP vào dự án.
Hướng dẫn di chuyển Room chỉ dành cho Android sang KMP.
Bạn có thể xem hướng dẫn chi tiết hơn trong trung tâm tài liệu về Kotlin Multiplatform trên Kotlinlang.org.
Tìm hiểu về Kotlin Multiplatform, cách hoạt động và lợi ích của nền tảng này.