Kotlin Multiplatform의 약자는 KMP 일까 KMM 일까? Kotlin Multiplatform을 공부하면서, 이상한 점을 하나 발견했다. 어떤 사이트에서는 약자를 KMM이라고 쓰고 어떤 사이트에서는 KMP이라고 쓰는 것을 발견했는데, 일반적으로 하나의 제품을 가리킬 때 두가지 약어로 가리키는 경우는 드물기 때문에 이상하다 생각했다. 그러던 중 인터넷을 찾아보다 다음과 같은 글을 발견했다. https://blog.jetbrains.com/kotlin/2023/07/update-on-the-name-of-kotlin-multiplatform/ Update on the Name of Kotlin Multiplatform | The Kotlin Blog From now on, “Kotlin Mu..
KMP
expect class와 expect fun KMM이 나오면서 코틀린을 사용해 안드로이드, iOS 모두의 비즈니스 로직을 구현하기 위해 Kotlin에 class와 fun에 붙일 수 있는 expect modifier가 나오게 됐다. expect modifier은 abstract modifier와 비슷하게 동작하지만, 의도가 다르다. abstract class는 자신을 상속하는 클래스가 추상체로 포함된 함수나 변수 등을 구현하도록 만들지만, expect class는 KMM에서의 공통 모듈에서 선언된 선언체가 Android, iOS 각각에서 구현되도록 강제하기 위해 만들어졌다. expect class 사용해보기 예를 들어 다음과 같은 commonMain 모듈에 다음과 같이 VersionGetter 클래스를 e..
이전 글 Android Studio KMM(Kotlin Multiplatform Mobile) 개발 환경 설정하고 앱 만들어보기 안드로이드 스튜디오에서 KMM(Kotlin Multiplatform Mobile) 앱을 개발하기 위해서는 KMM 개발용 플러그인을 설치해야 한다. 이번 글에서는 KMM 용 플러그인을 설치하는 방법과, 해당 플러그인을 사용해 프 kotlinworld.com 이전 글에서는 안드로이드 스튜디오를 사용해 KMP 프로젝트 XCode 상에서 열기 KMM 프로젝트를 XCode 상에서 열기 위해서는 iosApp 모듈을 XCode 상에서 열어야 한다. iOS앱 모듈에서는 iosApp.xcodeproj 파일이 있는데, 이곳에 XCode에서 iOS 앱 개발 환경을 구성하기 위한 메타 정보들이 들어..
오류 메세지 KMM 앱을 iOS로 빌드 중 아래와 같은 오류 메세지를 확인했다. The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 16.0, but the range of supported deployment target versions is 9.0 to 15.2.99. 이 오류 메세지를 직역하면 다음과 같은 말이다. iOS deployment target 버전 'IPHONEOS_DEPLOYMENT_TARGET'은 16.0으로 설정되어 있으나 지원되는 deployment target 버전 범위는 9.0~15.2.99이다. 원인 이 메세지는 XCode에서 지원하는 iOS Deployment Target 버전을 벗어난 버전으로 iOS 프로젝트..
안드로이드 스튜디오에서 KMM(Kotlin Multiplatform Mobile) 앱을 개발하기 위해서는 KMM 개발용 플러그인을 설치해야 한다. 이번 글에서는 KMM 용 플러그인을 설치하는 방법과, 해당 플러그인을 사용해 프로젝트를 만드는 방법까지를 학습해볼 것이다. KMP 플러그인 설치하기 1. 안드로이드 스튜디오를 켜면 다음과 같은 화면이 나온다. 2. 이 화면에서 왼쪽에 Plugin을 누르고, Kotlin Multiplatform을 검색하면, Kotlin Multiplatform Mobile 플러그인이 나온다. 이걸 Install을 누른다. 3. 설치가 완료되면, 안드로이드 스튜디오를 재시작하라는 팝업이 나오고, 재시작(Restart) 버튼을 누르면, 플러그인의 설치가 완료된다. 여기까지 KMM ..