Kotlin 멀티플랫폼 개요

Kotlin 멀티플랫폼 (KMP)을 사용하면 여러 플랫폼에서 Kotlin 코드를 공유할 수 있습니다. Kotlin Multiplatform은 JetBrains에서 개발했으며 Android와 iOS 간에 비즈니스 로직을 공유하기 위해 Google에서 공식적으로 지원합니다. KMP를 사용하여 모바일 플랫폼을 타겟팅하는 것은 안정적이고 프로덕션에 즉시 사용할 수 있습니다.

멀티플랫폼 Jetpack 라이브러리

많은 Jetpack 라이브러리가 이미 KMP를 활용하도록 이전되었습니다. 다음 Jetpack 라이브러리는 KMP를 지원합니다.

Maven 그룹 ID 최근 업데이트 안정화 버전 출시 후보 버전 베타 버전 알파 버전 문서
annotation(*) 2025년 7월 16일 1.9.1 - - -
collection 2025년 3월 12일 1.5.0 - - -
Datastore 2025년 5월 20일 1.1.7 - - 1.2.0-alpha02 문서
lifecycle(*) 2025년 7월 30일 2.9.2 - - 2.10.0-alpha01
paging(*) 2025년 7월 30일 3.3.6 - - 3.4.0-alpha02
room 2025년 8월 1일 2.7.2 - 2.8.0-beta01 - 문서
savedstate 2025년 7월 30일 1.3.1 - - 1.4.0-alpha01
sqlite 2025년 8월 1일 2.5.2 - 2.6.0-beta01 - 문서

참조 문서

이러한 라이브러리 (예: DataStoreFactory)의 참조 문서에서는 일반 코드, Android, 네이티브의 가용성을 기준으로 API를 표시합니다.

각 페이지 상단에서 플랫폼별로 선언을 필터링할 수도 있습니다. 다음 표에는 각 마커의 의미가 나와 있습니다.

지원되는 플랫폼

공식적으로 지원되는 플랫폼인 Android 및 iOS용 Jetpack 라이브러리 출시에서는 동일한 품질 및 호환성 요구사항을 유지합니다. 하지만 Jetpack의 Kotlin 멀티플랫폼 지원을 다른 플랫폼으로 확장하기 위해 노력하고 있으므로 도구 및 인프라 지원은 아직 개발 중일 수 있습니다.

각 플랫폼의 현재 지원 수준은 다음과 같이 등급으로 요약할 수 있습니다.

Tier 1:

  • CI에서 완전히 테스트됨(호스트 측 테스트와 기기 내 테스트 모두 포함)
  • 시맨틱 버전 관리 정책에 따른 소스 및 바이너리 호환성 추적

Tier 2:

  • CI에서 부분적으로 테스트됨, 호스트 측 테스트로 제한됨
  • 소스 또는 바이너리 호환성 추적 없음

Tier 3:

  • CI에서 테스트되지 않음
  • 소스 또는 바이너리 호환성 추적 없음
플랫폼 지원 수준
Android Tier 1
JVM Tier 1
iOS Tier 1
macOS 등급 2
Linux 등급 2
watchOS Tier 3
tvOS Tier 3
Windows Tier 3
JavaScript Tier 3
WASM Tier 3

도구 지원

Android 스튜디오에서 멀티플랫폼 프로젝트를 열고, 수정하고, 실행할 수 있습니다. 단, 이들 프로젝트에서는 아직 일부 IDE 기능을 사용할 수 없습니다.

Android 스튜디오로 새 KMP 모듈 만들기

Android 스튜디오 내에서 KMP 공유 모듈을 만들어 KMP로의 마이그레이션을 시작할 수 있습니다. 이 모듈은 Android 및 iOS 앱 개발을 시작하는 데 필요한 모든 플러그인(Android-KMP 플러그인 포함)을 자동으로 적용합니다.

Kotlin 멀티플랫폼 Android 스튜디오 플러그인

JetBrains에서 개발한 Kotlin 멀티플랫폼 Android 스튜디오 플러그인을 설치하는 것이 좋습니다. 이 플러그인은 개발 환경을 간소화하는 여러 기능을 제공합니다.

  • 새 프로젝트 마법사: IDE 내에서 새 멀티플랫폼 프로젝트를 만듭니다.
  • 프리플라이트 검사: 프리플라이트 검사를 통해 환경을 구성할 수 있습니다.
  • 실행 구성: IDE에서 직접 iOS와 Android 모두에서 애플리케이션을 실행, 디버그, 테스트합니다.
  • IDE의 기본 Swift 지원: 교차 언어 디버깅 도구, 탐색, 빠른 문서화 등 IDE에서 기본 Swift 지원을 받으세요.

추가 리소스

전반적인 멀티플랫폼 생태계 및 고급 구성에 관한 자세한 내용은 공식 Kotlin 멀티플랫폼 문서를 참고하세요.

의견

이러한 라이브러리에 관한 의견이 있으면 Issue Tracker를 통해 공유해 주세요.