Android 프로젝트 내에서 Kotlin 멀티플랫폼 (KMP) 모듈을 만들려면 Android 스튜디오 Meerkat 및 Android Gradle 플러그인 8.8.0 이상에서 사용할 수 있는 Kotlin 멀티플랫폼 공유 모듈 템플릿을 사용하세요.
모듈 템플릿은 Android 및 iOS 플랫폼을 타겟팅하는 최소 구성으로 새 모듈 생성을 자동화합니다. KMP는 데스크톱 및 웹과 같은 다른 타겟도 지원하며, 이는 나중에 모듈에 추가할 수 있습니다. 전체 목록은 지원되는 플랫폼의 안정성을 참고하세요. 타겟을 선언하려면 멀티플랫폼 Gradle DSL 참조의 타겟을 참고하세요.
공유 KMP 모듈 설정
공유 KMP 모듈을 만들려면 다음 단계를 따르세요.
- File > New > New Module을 선택합니다.
- Templates 패널에서 Kotlin Multiplatform Shared Module 템플릿을 선택합니다.
템플릿의 필드는 다음과 같습니다.
- Module name: Gradle 모듈 이름과 iOS 프레임워크 이름을 정의합니다 (나중에 변경할 수 있음).
- Package name: 이 모듈에 있는 파일의 패키지 이름을 정의합니다.
- Finish를 클릭하고 Gradle이 프로젝트와 동기화되도록 허용합니다. 새로 만든 모듈 파일을 소스 제어에 추가하라는 메시지가 표시될 수도 있습니다.
완료되면 Android 스튜디오 프로젝트 뷰에 각 플랫폼의 소스 세트와 함께 새 공유 모듈이 표시됩니다.
공유 모듈을 Android 앱에 연결
모듈 마법사는 새로 만든 모듈을 기존 모듈에 종속 항목으로 추가하지 않습니다. 다음 단계로, 다른 Android 종속 항목과 마찬가지로 공유 모듈을 기존 Gradle 모듈 중 하나에 연결해야 합니다.
dependencies {
...
implementation(project(":shared"))
}
사용 설정하면 평소처럼 코드에 액세스할 수 있습니다. Android 앱에서는 androidMain 또는 commonMain에서 사용할 수 있는 코드에 액세스할 수 있습니다.
Kotlin 멀티플랫폼 프로젝트 구조에 관한 자세한 내용은 Kotlin 멀티플랫폼 프로젝트 구조의 기본사항을 참고하세요.
iOS 앱에 공유 모듈 설정
Swift는 Kotlin 모듈을 직접 사용할 수 없으며 컴파일된 바이너리 프레임워크를 생성해야 합니다.
Android 스튜디오의 새 모듈 템플릿은 각 iOS 아키텍처의 프레임워크를 생성하도록 공유 모듈을 구성합니다. 공유 모듈의 build.gradle.kts 파일에서 다음 코드를 찾을 수 있습니다.
val xcfName = "sharedKit"
iosX64 {
binaries.framework {
baseName = xcfName
}
}
iosArm64 {
binaries.framework {
baseName = xcfName
}
}
iosSimulatorArm64 {
binaries.framework {
baseName = xcfName
}
}
다른 아키텍처 유형을 정의하는 방법에 대한 자세한 내용은 계층적 프로젝트 구조를 참조하세요.
iOS 프로젝트에서 공유 라이브러리 연결
iOS 프로젝트에서 공유 코드에 액세스할 수 있도록 하려면 Swift 소스를 컴파일하기 전에 Kotlin 프레임워크를 생성하는 스크립트 단계를 추가합니다.
- Android 스튜디오에서 파일을 마우스 오른쪽 버튼으로 클릭하고 Open In 및 Open in Associated Application을 선택합니다. 그러면 Xcode에서 iOS 앱이 열립니다.
- 프로젝트 탐색기에서 프로젝트 이름을 더블클릭하여 프로젝트 설정을 엽니다.
- 기본 Run Script 이름을 Compile Kotlin Framework로 변경하여 이 단계에서 실행하는 작업을 더 잘 식별합니다. Run Script 제목을 더블클릭하여 수정합니다.
- 빌드 단계를 펼치고 Shell 텍스트 필드에 다음 스크립트 코드를 입력합니다.
Compile Sources 단계 앞에 Run Script 단계를 드래그합니다.
그림 6. 소스 컴파일 전에 스크립트 빌드 단계 실행 ⌘B를 클릭하거나 Product(제품) 메뉴로 이동하고 Build(빌드)를 선택하여 Xcode에서 프로젝트를 빌드합니다.
빌드가 성공하면 다음 아이콘이 표시됩니다.

iOS 앱에서 공유 코드에 액세스
iOS 앱이 공유 모듈의 코드에 액세스할 수 있는지 확인하려면 다음을 실행합니다.
- iOS 프로젝트에서 다음 위치에 있는
ContentView.swift파일을 엽니다.Sources/View/ContentView.swift - 파일 상단에
sharedKit가져오기를 추가합니다. - 표시된 문자열에
Platform_iosKt.platform()정보를 포함하도록 다음과 같이 텍스트 뷰를 수정합니다.
이 업데이트는 앱이 공유 모듈에서 platform() 함수를 호출할 수 있는지 확인합니다. 이 함수는 iOS 플랫폼에서 실행할 때 'iOS'를 반환해야 합니다.

추가 리소스
- KMP 개발을 처음 사용하는 경우 공식 KMP 문서에서 더 많은 가이드를 참고하세요.
- iOS 개발을 처음 사용하는 경우 Swift 기본사항 문서를 참고하세요.
- 일반적인 KMP 설정 문제는 KMP 빠른 시작의 문제 해결을 참고하세요.
- 샘플 앱은 Android Kotlin 멀티플랫폼 샘플을 참고하세요.