เขียนโค้ดเบสเดียวที่ทำงานได้ในหลายแพลตฟอร์มด้วย Kotlin Multiplatform

Google รองรับ Kotlin Multiplatform (KMP) อย่างเป็นทางการสำหรับการแชร์ตรรกะทางธุรกิจระหว่าง Android กับ iOS Kotlin Multiplatform เสถียรและพร้อมใช้งานจริง Compose Multiplatform (CMP) ของ JetBrains ยังช่วยให้นักพัฒนาแอปแชร์ UI ในแพลตฟอร์มต่างๆ ได้ด้วย

เส้นทาง
เริ่มเส้นทางการพัฒนาแอปแบบหลายแพลตฟอร์มได้เลยวันนี้ เส้นทางนี้จะแนะนำข้อมูลสำคัญของ Kotlin Multiplatform ตั้งแต่การตั้งค่าโปรเจ็กต์ การแชร์โค้ด และการใช้ API เฉพาะแพลตฟอร์ม ไปจนถึงการย้ายข้อมูลฐานข้อมูล Room ไปยัง Kotlin Multiplatform
ปลั๊กอิน Android Studio
เราขอแนะนำให้ติดตั้งปลั๊กอิน Kotlin Multiplatform สำหรับ Android Studio ที่พัฒนาโดย JetBrains เพื่อปรับปรุงประสบการณ์การพัฒนาภายใน Android Studio
  • วิซาร์ดโปรเจ็กต์ใหม่: สร้างโปรเจ็กต์แบบหลายแพลตฟอร์มใหม่ภายใน IDE
  • การตรวจสอบก่อนดำเนินการ: การตรวจสอบก่อนดำเนินการจะช่วยคุณกำหนดค่าสภาพแวดล้อม
  • การกำหนดค่าการเรียกใช้: เรียกใช้ แก้ไขข้อบกพร่อง และทดสอบแอปพลิเคชันทั้งใน iOS และ Android จาก IDE โดยตรง
  • การรองรับ Swift ขั้นพื้นฐานใน IDE: รับการรองรับ Swift ขั้นพื้นฐานใน IDE ซึ่งรวมถึงเครื่องมือแก้ไขข้อบกพร่องข้ามภาษา การนำทาง และเอกสารประกอบ ฉบับย่อ

ประโยชน์ของ Kotlin Multiplatform

Kotlin Multiplatform ช่วยให้คุณเลือกได้ว่าจะแชร์อะไรในแพลตฟอร์มต่างๆ ตั้งแต่ตรรกะทางธุรกิจหลักไปจนถึงทั้งแอปพลิเคชัน ประโยชน์หลักบางส่วนมีดังนี้
คุณไม่จำเป็นต้องทำซ้ำตรรกะทางธุรกิจที่ซับซ้อนในแต่ละแพลตฟอร์ม
Kotlin Multiplatform ช่วยให้คุณไม่ต้องเขียนแอปพลิเคชันใหม่ทั้งหมดเพื่อเริ่มแชร์โค้ดระหว่างแพลตฟอร์ม
Kotlin Multiplatform จะคอมไพล์เป็นวิธีที่มาพร้อมเครื่องซึ่งแพลตฟอร์มเป้าหมายใช้เรียกใช้โค้ด จึงให้ประสิทธิภาพเทียบเท่ากับการใช้งานที่มาพร้อมเครื่อง

ไลบรารี Kotlin Multiplatform และ Jetpack

เราได้ย้ายข้อมูลไลบรารี Jetpack หลายรายการให้พร้อมใช้งาน KMP แล้ว ไลบรารี Jetpack ต่อไปนี้รองรับ KMP

โลโก้ Android สร้างโดย Android โลโก้ JetBrains สร้างโดย JetBrains ไม่รองรับ

คลัง รุ่นล่าสุด Android iOS JVM เว็บ
annotation 22 ตุลาคม 2025
คอลเล็กชัน 27 สิงหาคม 2025
compose 22 ตุลาคม 2025
Datastore

เอกสารประกอบ
22 ตุลาคม 2025
วงจรการใช้งาน

เอกสารประกอบ
22 ตุลาคม 2025
viewModel

Documentation
22 ตุลาคม 2025
viewModel-compose

เอกสารประกอบ
22 ตุลาคม 2025
การแบ่งหน้า 10 กันยายน 2025
room

Documentation
22 ตุลาคม 2025
savedstate 22 ตุลาคม 2025
sqlite

เอกสารประกอบ
24 กันยายน 2025

หากมีความคิดเห็นเกี่ยวกับไลบรารีเหล่านี้ โปรดแชร์ผ่านเครื่องมือติดตามปัญหา

การสนับสนุนเครื่องมือ

คุณสามารถเปิด แก้ไข และเรียกใช้โปรเจ็กต์หลายแพลตฟอร์มใน Android Studio ได้
คุณเริ่มย้ายข้อมูลไปยัง KMP ได้โดยการสร้างโมดูลที่แชร์ของ KMP ภายใน Android Studio โมดูลนี้จะใช้ปลั๊กอินที่จำเป็นทั้งหมดโดยอัตโนมัติ รวมถึงปลั๊กอิน Android-KMP เพื่อเริ่มพัฒนาแอป Android และ iOS
การแก้ไขสดจะทำงานเมื่อสร้างบนอุปกรณ์ Android และแก้ไขโค้ดใดๆ ภายในโปรเจ็กต์ ไม่ใช่แค่ใน androidMain
ตัวอย่างสำหรับ Jetpack Compose ยังพร้อมใช้งานสำหรับ Compose Multiplatform ของ JetBrains จากcommonMainชุดแหล่งที่มาด้วย

แอปที่สร้างด้วย Kotlin Multiplatform

ปัจจุบันมีแอปจำนวนมากที่ใช้ Kotlin Multiplatform ได้อย่างประสบความสำเร็จ
Blinkit
Cash App
Duolingo
Forbes
Google Docs
JioHotstar
หิน
Swiggy
Ultrahuman
Wrike
Zomato

แพลตฟอร์มที่รองรับ

การเปิดตัวไลบรารี Jetpack สำหรับแพลตฟอร์มที่รองรับอย่างเป็นทางการอย่าง Android และ iOS จะยังคงมีข้อกำหนดด้านคุณภาพและความเข้ากันได้เหมือนเดิม อย่างไรก็ตาม ในขณะที่เรากำลังขยายการรองรับ Kotlin Multiplatform ของ Jetpack ไปยังแพลตฟอร์มอื่นๆ การรองรับเครื่องมือและโครงสร้างพื้นฐานอาจยังอยู่ระหว่างดำเนินการ
มีการทดสอบโค้ดอย่างเต็มรูปแบบใน CI ซึ่งรวมถึงการทดสอบทั้งฝั่งโฮสต์และในอุปกรณ์ เราติดตามความเข้ากันได้ของซอร์สและไบนารีตามนโยบายการกำหนดเวอร์ชันเชิงความหมาย
  • Android
  • JVM
  • iOS
มีการทดสอบโค้ดบางส่วนใน CI โดยจำกัดเฉพาะการทดสอบฝั่งโฮสต์ เราไม่ติดตามความเข้ากันได้ของแหล่งที่มาหรือไบนารี
  • macOS
  • Linux
โค้ดไม่ได้ทดสอบใน CI ไม่มีการติดตามความเข้ากันได้ของแหล่งที่มาหรือไบนารี
  • watchOS
  • tvOS
  • Windows
  • JavaScript
  • WASM

แหล่งข้อมูลเพิ่มเติม

ดูข้อมูลเพิ่มเติมเกี่ยวกับระบบนิเวศแบบหลายแพลตฟอร์มโดยรวมและการกำหนดค่าขั้นสูงเพิ่มเติมได้ที่เอกสารประกอบอย่างเป็นทางการของ Kotlin Multiplatform
ชุดตัวอย่าง Kotlin Multiplatform ที่แสดงวิธีใช้ไลบรารี Jetpack สำหรับ Android และ iOS
การเริ่มต้นใช้งานแบบมีคำแนะนำเกี่ยวกับวิธีเพิ่ม KMP ลงในโปรเจ็กต์
การย้ายข้อมูลจาก Room ที่ใช้ได้เฉพาะใน Android ไปยัง KMP โดยมีคำแนะนำ
ดูคำแนะนำแบบเจาะลึกเพิ่มเติมได้ในฮับเอกสารประกอบของ Kotlin Multiplatform ใน Kotlinlang.org
ดูว่า Kotlin Multiplatform คืออะไร วิธีการทำงาน และประโยชน์ของการใช้งาน